From c2d43f9859a861f8522c32bb42e9f74fd229b6bf Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 17 Nov 2013 16:15:37 +0000 Subject: [PATCH 1/1] autopkgtests: push test; specify dummy upload host; specify dput host and config --- dgit | 1 + tests/git-template.tar | Bin 0 -> 30720 bytes tests/gnupg/pubring.gpg | Bin 0 -> 1204 bytes tests/gnupg/random_seed | Bin 0 -> 600 bytes tests/gnupg/secring.gpg | Bin 0 -> 2506 bytes tests/gnupg/trustdb.gpg | Bin 0 -> 1280 bytes tests/lib | 81 ++++++++++++++++++++++++++++++++---- tests/tests/push-newpackage | 24 +++++++++++ 8 files changed, 99 insertions(+), 7 deletions(-) create mode 100644 tests/git-template.tar create mode 100644 tests/gnupg/pubring.gpg create mode 100644 tests/gnupg/random_seed create mode 100644 tests/gnupg/secring.gpg create mode 100644 tests/gnupg/trustdb.gpg create mode 100755 tests/tests/push-newpackage diff --git a/dgit b/dgit index 38b33648..9b895b03 100755 --- a/dgit +++ b/dgit @@ -465,6 +465,7 @@ our %defcfg = ('dgit.default.distro' => 'debian', 'dgit-distro.test-dummy.git-path' => "$td/git", 'dgit-distro.test-dummy.archive-query' => "dummycat:$td/aq", 'dgit-distro.test-dummy.mirror' => "file://$td/mirror/", + 'dgit-distro.test-dummy.upload-host' => 'test-dummy', ); sub cfg { diff --git a/tests/git-template.tar b/tests/git-template.tar new file mode 100644 index 0000000000000000000000000000000000000000..030bb8acec7d35dc34f39462270ebf5c2b5a6ccb GIT binary patch literal 30720 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 F{|DisSs4HT literal 0 HcmV?d00001 diff --git a/tests/gnupg/pubring.gpg b/tests/gnupg/pubring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..bc1698108dc7964ff1c0ff7c78f82c09851d177b GIT binary patch literal 1204 zcmV;l1WWsw0SyFFh}`Z02mqq8BM-~x3l=plT3%5feMppy6l9X+6R!^r@WGno+#v(- z{5p}r-A|N(8%4JR3Gs>HzzPm_f01{6Dv4q8z=)BQAq3F!gMQpxAOqBV!SjS>JpXlu z3!C82ZU9V5xWFvK4>>z{!+XX7IxE!{wyhLGM6j2Xm4Wk)9G%aTFa{tYZrE$PH7n@p z)R}(?hO~$_5jWMCX;*}hq*=tPW!xyM5}j`0stZf0#bkQk+^ z1F~6XKWwj^(gKb3N7!VDc#({GM}~LMTgqt|XBb};FhDG}B-u#kDP^ixoGo93s-oQyu z4XNu+V!SFqLEJ{d=L2Ch;OA$)w7d@`uAIu!tZZ&j1T9C@2Nv&(E>V?G)$*u)u!7Yq zY0k~mNyDM;D$oUN%Z-C2N3a3_1GxbW1X76H?g0n@;CVqU#2I3}DB0!`TRlqLXLqTb zt*rY9vh;Vzz}v{stneKZcE!1DJ!Y;O&l%98=_Au*@v0~yi2i4Z;|7w!2Fme>F+SSc ze0sd{0rb{m3K>Jz@*$)JzgJ|SeseQ~dbYvhrfEQ;SMLku*Jle(tv9*q?GLBq924+G zEaWSI5kn7%BkN%zFGk^W+8%f9 zOlKVYncyBPTHvDI_SAKh+G_Y1y@UKJsgKd59pX~}UY`DB?y4vMufwrum`?q$Yy&e5 zf8SQMR^mptn>3<;dcdMSur%y{;Z0%&n8cG|01*KI0f_-01Q-DV00{*GQi$B{0vikf z3JDOS+snW?u|108B?taBJs$fO4^rHZ@4;q0+p%Buq}a2r?MW<$|1BWE44Jqga~Vb@ zL+d<>XYAWv5aQHgx0QPJ@<1+7!m4RyCF*Sa1Yb8QX;9UR&AjO$ArV63ZeAgG8LZLG zkqj4RbXCsHx6MU%HYe2_LB4$v^aoS)>}vvII}Y_!&`-vBCl5{&3hc)tCV1iEvuiT{ z;&5kXi+}bTtw-%snQsKQEstKBCTpi)FrvDde)FM`2LTzAOfm%wHtWYK2}dQH>VU9! ztupDkHHqN?qojr3Jpv6j*f%LRJb~xjPctvSp+`~}^ S0xZveISVQuoZA(!0ssTjtuWdE literal 0 HcmV?d00001 diff --git a/tests/gnupg/random_seed b/tests/gnupg/random_seed new file mode 100644 index 0000000000000000000000000000000000000000..cc75662f3a6f8d5656ebb8a18c016055894318b3 GIT binary patch literal 600 zcmV-e0;l~QC$X<~o;A#Mn{=L?KN0tZ1XX$fY-&K)*a$M!gYm$D;TX1fs=4p;(wjjc z$6O2XHYj06S>EjGvCHrp)%s!k&~%z*i*A~Ve%*56&d`=X-Rrd-8|oHb=D|;73x>)u zTbLHy*UDe65rGo#2R&*)%26-CTr8MmTO)3k&^@I*E}l4sf1oNZoP)eD5pnAHzv@I- zXSqHV0uF$qFFYCk#CEzI$$q0~GR$kxJ^&YBg6$!rExZ7K8gd66F}-T2Nb2VOCQk|= zZsBMh{>Vg?m@@02yLa&nC!l@3AoKba6ffG1_v>wN03XS&9~H@G;OlEhchjfqs)r%~ zLjZP6-6OzYc!LQj&)(VhuLekb_Qh#idgIx@O}hSJ5{z;XG|Kq(TAw|g+u zM%q^E8O4p%h8!bcKMHk3KVl88t-jlpm>c#{5I#oIvMsv{nnvPR&49N^30P9ycCc=l zmQL*LS%lq&fp8msyou)%lVj%8T?q`yF$+w5l70e3q!fpIfJi& za05MSwTtDZRisf8o&qzvq~pRACCELlq&-O literal 0 HcmV?d00001 diff --git a/tests/gnupg/secring.gpg b/tests/gnupg/secring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..9c6519da5031dd6307ecef5b0011573ea918aca0 GIT binary patch literal 2506 zcmV;*2{rbW1DFI-h}`Z02mqq8BM-~x3l=plT3%5feMppy6l9X+6R!^r@WGno+#v(- z{5p}r-A|N(8%4JR3Gs>HzzPm_f01{6Dv4q8z=)BQAq3F!gMQpxAOqBV!SjS>JpXlu z3!C82ZU9V5xWFvK4>>z{!+XX7IxE!{wyhLGM6j2Xm4Wk)9G%aTFa{tYZrE$PH7n@p z)R}(?hO~$_5jWMCX;*}hq*=tPW!xyM5}j zru6suLM-iBFYQj_zBwle!oY|r#tbfR^w7S)*EO(6&_Z5V zOV69usMp_gd>A<5BBaviyVoPKQIJFuWZ?P;L2DMkbc$&h*f=UzGbPg%&Nw;r(dUM^ zjqc;ij7&cmM)?@iG=U~U0mv2Z^W?nOz$;}KXSeCmq_C}~6&an+Ek_kX^-d;3!MDLL z#B)fUG%z$HG}gQEvr8Apr9{pXz}9nIMLRSi@4V3r_b{N?f;Idx>2VNpAyMVh@PI$p@;PaYB>O@L;Q8m_WR>nHQrURB8 z)qw(ys*KKuVcP2|TBAAN{tk?!)&G4k902Pk(6=4Ektd;bf|UU!@jnkbhdA?=V}gp1 ziCwAf`QKB;y#tm!zpP^u$5DUsY0iTDt$6Q=w&BqOioHM2G_}I-B}St~1OV5Oqrnc1 zrI&eTCk;qiR18k(jb`=-$uF&UxU(>P!t}@^ z)s%?(l7MsrA7|;if=J30}7^SKMvRP+8Y_FZt0*&=Y*kp)!k&JmqhIi0g z%4ry97+(}HKrFT->=hA@jWQ3T2sGeI!AAPC1lFy%d2l0)7?AlSaf)j3=;Z?Jp;3ZF zOjS`YVu}yOP-P_E{E|sfsLvELoz#%tz)4RHsq0Q+yedFJ+(yFZ17S4a=V!jOybmR= zoXXOyY;I5lEl1P`7VnELQI$~D@~C~Vg4HW&&dt+sM$Y@EsF&#kp)fX0990 z8PKEYBhzH@swg6e{%48f29m)B%JGOXKHA%Sdc5)h^wwhv8AI0cA*2PrS7e}mb2Ef` zw!z}2X+WY^?+fMEXA4fPH@WKV52xfD6YxbWl`g5-jggC4-|@UJM&WbX9(V0bXB_;Q;2tYl;G*94)OD2FYWNtvgZwI~ zkI|$Z;!^-#p8jO+swe-i!?9?XPW`ZK12YYO-&VC&;zqZdG@^idz@k2|H0*!jO=1R^ z#FJqF5di=J00;X9kCeBaIWD;$rV7IImc54Np-DVanK3seU)|Pd$fLY*sf_pnD>6y9 z8@8|tWD`V>E@WZZY-2*}B_L{-&zs+OZrl@Mc^6fE^lEHcVM!R+^*0scy4L&h1wdpj zefWL>MlmspGM-p~V06V1fGPy>EG0{L1yY}Au&#ff8OAB7lEWM~x)bEuwmwN1;-Est zuDlTnl)W6ba0GND!zk?-Sio9p2LF~vm-`zTg^d|oR4LpPRY)j(BGCA-AuUvNyyM)5hd`ErNtZf95Y4F z7^T9ZU(@I)c*k&|66|C6#)kX;39&Kxlt7+TjrJG@p9BE*cK`($I3F-m!-wN)t$|b^ za+XXZBoE*W#68VH_hOmL=-4Fs%r6nIYbLcYcAQUJqn`F#DT#uPO>6jlAgMbE!ba;b zV0aewpS+lA-vv8H)iQ>R(e##dIUId^u698XTemq9B}7%;Hy9dQ$IsF!=@;EYH`NHN zn?>6zeh_UWOa%X=NqqZ2SaYH!5jR)r-x%=^-HzLgQ{;A$J+9 z(an(z7iM%-&ds;YMRqnP)f_>-eG&8rQ}pa>0%AK3^;FPL#(5_XP7@03$0H_q;o`Gv zGXLUmXJ(6k_8YB7?Nga=1h*}ZUYaIrr(iImx|x3Sp^*mx8Iw#h1q?Rp$0`X&C7bGi zuy?I8>A5wD@oM%opO3!L1Dd#Pln2JOqRls^LBE|na~hz$tmp/dput.cf +[test-dummy] +method = local +incoming = $tmp/incoming +run_dinstall = 0 +END + t-worktree () { rm -rf $p tar xf $troot/worktrees/${p}_$1.tar @@ -29,6 +39,7 @@ t-worktree () { t-git-none () { mkdir -p $tmp/git + (set -e; cd $tmp/git; tar xf $troot/git-template.tar) } t-has-ancestor () { @@ -41,14 +52,18 @@ t-has-ancestor () { fi } -t-archive () { +t-archive-none () { p=$1 - v=$2 mkdir -p $tmp/aq $tmp/mirror + echo sid >$tmp/aq/suite.unstable +} + +t-archive () { + t-archive-none $1 + v=$2 local dscf=${p}_$2.dsc rm -f $tmp/mirror/${p}_* ln $troot/pkg-srcs/${p}_${2%-*}* $tmp/mirror/ - echo sid >$tmp/aq/suite.unstable echo "$2 $dscf" >>$tmp/aq/package.sid.${p} rm -rf $tmp/extract mkdir $tmp/extract @@ -57,7 +72,8 @@ t-archive () { t-dgit () { : '{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{' - ${DGIT_TEST-dgit} --dget:-u -dtest-dummy -D "$@" + ${DGIT_TEST-dgit} --dget:-u --dput:--config=$tmp/dput.cf \ + -dtest-dummy -D -k39B13D8A "$@" : '}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}' } @@ -68,7 +84,10 @@ t-diff-nogit () { t-cloned-fetched-good () { t-diff-nogit ../extract/$p-${v%-*} . t-clean-on-branch dgit/sid - t-refs-same HEAD remotes/dgit/dgit/sid + t-refs-same \ + refs/heads/dgit/sid \ + refs/remotes/dgit/dgit/sid + t-refs-notexist dgit/unstable remotes/dgit/dgit/unstable } t-output () { @@ -82,12 +101,60 @@ t-clean-on-branch () { t-output "## $1" git status -b --porcelain } +t-git-get-ref () { + local ref=$1 + git-show-ref -d $1 | perl -ne ' + $x = $1 if m#^(\w+) \Q'$1'\E(?:\^\{\})?$#; + END { print "$x\n" if length $x; } + ' +} + t-refs-same () { local f=$1 - git rev-parse $f >$tmp/t.ref1 + t-git-get-ref $f >$tmp/t.ref1 + t-refs-same-more "$@" +} + +t-refs-same-more () { local g for g in $*; do - git rev-parse $g >$tmp/t.refn + t-git-get-ref $g >$tmp/t.refn diff $tmp/t.ref1 $tmp/t.refn done } + +t-refs-notexist () { + for g in $*; do + t-git-get-ref $g >$tmp/t.refx + diff /dev/null $tmp/t.refx + done +} + +t-pushed-good () { + t-ref-dsc-dgit + t-refs-same-more \ + refs/heads/master \ + refs/tags/debian/$v \ + refs/remotes/dgit/dgit/sid + t-refs-notexist \ + refs/heads/dgit/unstable \ + refs/remotes/dgit/dgit/unstable + (set -e; cd $tmp/git/$p.git + t-refs-same-more \ + refs/dgit/sid \ + refs/tags/debian/$v + t-refs-notexist \ + refs/dgit/unstable + ) +} + +t-ref-dsc-dgit () { + perl -e ' + use Dpkg::Control::Hash; + my $h = new Dpkg::Control::Hash allow_pgp=>1; + $h->parse(\*STDIN,"dsc"); + my $ref = $h->{"Dgit"},"\n"; + die unless $ref =~ m/^\w+\b/; + print $ref,"\n"; + ' <$tmp/incoming/${p}_${v}.dsc >$tmp/t.ref1 +} diff --git a/tests/tests/push-newpackage b/tests/tests/push-newpackage new file mode 100755 index 00000000..2d016572 --- /dev/null +++ b/tests/tests/push-newpackage @@ -0,0 +1,24 @@ +#!/bin/bash +set -e +. tests/lib + +t-archive-none pari-extra +t-git-none +t-worktree 3-1 +v=3-1 +cd $p +git-branch -m dgit/sid master +git-remote rm dgit + +LANG=C t-dgit push 2>&1 \ + | tee /dev/stderr \ + | grep 'package appears to be new in this suite' >/dev/null + +echo y + +t-dgit build +t-dgit push --new + +t-pushed-good + +echo ok. -- 2.30.2