From f77d0d2cf17bfb3f580723082b41090373b6def3 Mon Sep 17 00:00:00 2001 From: Sitaram Chamarty Date: Tue, 11 Oct 2011 06:39:28 +0530 Subject: [PATCH 1/5] (test suite) t/install also serves as a quick way to "play install" gitolite (t/install-gitolite has been renamed to t/install) --- t/cleanout-gitolite | 22 ---------------- t/install | 64 +++++++++++++++++++++++++++++++++++++++++++++ t/install-gitolite | 55 -------------------------------------- t/keys/u1 | 27 ------------------- t/keys/u1.pub | 1 - t/keys/u2 | 27 ------------------- t/keys/u2.pub | 1 - t/keys/u3 | 27 ------------------- t/keys/u3.pub | 1 - t/keys/u4 | 27 ------------------- t/keys/u4.pub | 1 - t/keys/u5 | 27 ------------------- t/keys/u5.pub | 1 - t/keys/u6 | 27 ------------------- t/keys/u6.pub | 1 - t/rollback | 9 +++---- t/rollback.server | 15 +++-------- t/test-driver.sh | 7 ++++- t/update-gitolite | 15 ----------- 19 files changed, 76 insertions(+), 279 deletions(-) delete mode 100755 t/cleanout-gitolite create mode 100755 t/install delete mode 100755 t/install-gitolite delete mode 100644 t/keys/u1 delete mode 100644 t/keys/u1.pub delete mode 100644 t/keys/u2 delete mode 100644 t/keys/u2.pub delete mode 100644 t/keys/u3 delete mode 100644 t/keys/u3.pub delete mode 100644 t/keys/u4 delete mode 100644 t/keys/u4.pub delete mode 100644 t/keys/u5 delete mode 100644 t/keys/u5.pub delete mode 100644 t/keys/u6 delete mode 100644 t/keys/u6.pub delete mode 100755 t/update-gitolite diff --git a/t/cleanout-gitolite b/t/cleanout-gitolite deleted file mode 100755 index 4feaa06..0000000 --- a/t/cleanout-gitolite +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -export TESTDIR=$PWD - -[[ -f /tmp/$1.tar ]] || { echo need tar file 2>&1; exit 1; } - -# blank out the client side -rm -rf ~/gitolite-admin -# make sure we have the u1-u6 keys and the config to refer to them -cp $TESTDIR/keys/config ~/.ssh -cp $TESTDIR/keys/u[1-6]* ~/.ssh -chmod 755 ~/.ssh ~/.ssh/config ~/.ssh/*pub -chmod 600 ~/.ssh/u? - -# blank out the server side -echo the next command MAY ask for a password -ssh gitolite-test@localhost rm -rf .ssh .gitolite .gitolite.rc repositories gitolite-install -echo the next command SHOULD ask for a password -ssh-copy-id -i ~/.ssh/id_rsa gitolite-test@localhost -echo the next command should NOT ask for a password - -cd ~/gitolite diff --git a/t/install b/t/install new file mode 100755 index 0000000..864c196 --- /dev/null +++ b/t/install @@ -0,0 +1,64 @@ +#!/bin/bash + +# note: all the /tmp and /tmp/glrb stuff is for testing with a non-default +# REPO_BASE. I don't use it a lot so expect some glitches. Just ignore it if +# you're trying to understand this code... + +# ---- + +die() { echo "$@"; exit 1; } + +cd ${0%/*} + +git rev-parse --show-toplevel || die should run t/install from a clone of gitolite +export TESTDIR=$PWD + +cd $HOME +# prepare and save local ssh +mkdir -p .ssh; chmod go-w .ssh + +echo -n generating keys... +for i in tester u1 u2 u3 u4 u5 u6 +do + ssh-keygen -q -N "" -f .ssh/$i +done +echo done + +sed -e "s/gitolite-test/$USER/" < $TESTDIR/keys/config > .ssh/config +chmod go-w .ssh/config + +tar cf .ssh.save .ssh + +# blank out the client side +rm -rf gitolite-admin .ssh +tar xf .ssh.save + +# blank out the server side +rm -rf .gitolite .gitolite.rc repositories /tmp/glrb bin share + +# set up our identity (impacts some tests; don't change this!) +git config --global user.name "gitolite tester" +git config --global user.email "tester@example.com" + +# install it +cd gitolite +git describe --tags --long HEAD > conf/VERSION + # in case it is dirty +src/gl-system-install +cd $HOME +gl-setup -q .ssh/tester.pub + +# add 6 keys +rm -rf ~/gitolite-admin +git clone gitolite:gitolite-admin +cd gitolite-admin +cp ~/.ssh/u*.pub keydir +git add keydir; git commit -m 'added 6 keys' +git push + +# make the rollback.tar files on both sides +cd $HOME +tar cf client-rollback.tar gitolite-admin +mkdir -p repositories /tmp/glrb +tar cf server-rollback.tar .ssh .gitolite .gitolite.rc repositories bin share +tar -C /tmp -cf $HOME/server-rollback2.tar glrb diff --git a/t/install-gitolite b/t/install-gitolite deleted file mode 100755 index d1e8938..0000000 --- a/t/install-gitolite +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash - - -export TESTDIR=$PWD - -# prepare local ssh -mkdir -p $HOME/.ssh; chmod go-rx $HOME/.ssh -[ -f "$HOME/.ssh/id_rsa" ] || ssh-keygen -q -N "" -t rsa -f $HOME/.ssh/id_rsa - -# blank out the client side -rm -rf ~/gitolite-admin -# make sure we have the u1-u6 keys and the config to refer to them -cp $TESTDIR/keys/config ~/.ssh -cp $TESTDIR/keys/u[1-6]* ~/.ssh -chmod 755 ~/.ssh ~/.ssh/config ~/.ssh/*pub -chmod 600 ~/.ssh/u? - -# blank out the server side -echo the next command MAY ask for a password -ssh gitolite-test@localhost rm -rf .ssh .gitolite .gitolite.rc repositories /tmp/glrb bin share -echo the next command SHOULD ask for a password -ssh-copy-id -i ~/.ssh/id_rsa gitolite-test@localhost -echo the next command should NOT ask for a password -scp ~/.ssh/tester.pub gitolite-test@localhost: - -# install it -echo installing whatever is here now... -# ../src/gl-easy-install -q gitolite-test localhost tester -cat < conf/VERSION -src/gl-system-install -cd -gl-setup -q tester.pub -EOF -echo ============================= -echo -echo -echo - -# add 6 keys -rm -rf ~/gitolite-admin -cd -git clone gitolite:gitolite-admin -cd ~/gitolite-admin -cp $TESTDIR/keys/u*pub keydir -git add keydir; git commit -m 'added 6 keys' -git push - -# make the rollback.tar files on both sides -cd -tar cf rollback.tar gitolite-admin -ssh gitolite-test@localhost mkdir -p repositories /tmp/glrb -ssh gitolite-test@localhost tar cf rollback.tar .ssh .gitolite .gitolite.rc repositories bin share -ssh gitolite-test@localhost tar -C /tmp -cf \$HOME/rollback2.tar glrb diff --git a/t/keys/u1 b/t/keys/u1 deleted file mode 100644 index 43410d0..0000000 --- a/t/keys/u1 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEoAIBAAKCAQEAnqiW8xCSfg/JO7acBvarVghAyM2Xw2ZzwaQN5xOg/XOSt2wV -5wsT32hmPg/v8NqXcjKXMyI76ZO4U9To9yDvs6xKC9NwFmV6prjf6IC2gryykg2L -BvWKIrcr/tNBnKgDAs7SDtf1EEN5Byf0mTcy9c9eVMsxvwm3oXqXKCm1YkKeaWOE -d0xuRMRAVHlfon4M67r/heDZho9QLwvyDhorefhoLGOzrUbsXbcTHAEkt+m56swz -7d7yZVSXckqrQ+KyY6cVjm1kdBvO7B34TpjMYubv4a3WPC98QUAFSRir3+HW43JF -U/ty4Z7pCbpDBPctvg1fdCzIx1sg54zE6MZGnQIBIwKCAQBoQubaPhcfo/lEf1CW -3Jx6XTHjCsLQ3Oz7l7FdVgq1LrDe70GX1BRfnGBx7TdGgQRvnZaPUQLMsYfCD5HG -+GMBCtGSviUWCCwHKQgrEsEUFZnq8vT18c/Nq5HwmXRCX8d2366cCkH0vp/9Y2Y4 -zICS51s/CS9Rp0zJM01jiR9sc+LG9cz7pI8nk7jaCjhzV/229mQC5/1TxDqgdafH -/27cdtA0sqbG7lvL6k5qCYM+C96pOjmqap7x6YSMlUbcCKL1HLWzLsqMBjbgtm2M -jHB3Kv3aDk5Mf2Lj1G4Bauw/NCedoQ+bj4LCXfYIR5BKNSAmDigZitBMRHOInBEl -O7drAoGBAM9BTk9KYtS3yXmz/GVoNpgTZ1IFF90hjAhkPN5iFqOKL/f43U9Gn5gK -9wJp68FJbpB7V8qH2shI8S0jv3AJicH8MG3RHA2FSMjUTy4nKBP835OKxgl49J87 -OZNigS8BFbWKm5o0Wlm17H4GH6sEKgt4dFOelHmxO0H/4L1r0GGZAoGBAMP5UUAH -BXHLMD4GxnfNieegg7EjUbKMf6CqHAk44wCgS0mgjMrIoMiiAnf6djeKf1wrJvBB -S6eK3qu7ZUnVQKqDKZM9WAxyyZExKHx+FXFt51R6YrnJQVzMuA1Im7xSGJcmL30c -pVIwcVjKe5sKT8TUCRGYdyhfSGa+vok5K7elAoGATPr/1E7UQGGFWRb3WN2QnuKi -uBCFNOCTGQ9JzvE7m9Q9s+AXr7slVbruCDX4ev4Efs66NUhnNHLdPKbgtJXUFNoD -W/02Tiow+iL41qDUXzIJ5lgdq782ScWKafFjLrdCk+MGmFyWllmDucfCnpsljzte -aDOWO9QdUwdE2KRjV3MCgYAyZK5+LbDxYCJZF69gopEs7sLHJlbWJCDRitQCXxXM -9gS7KUjGbhq3P5o8G9VBe2KUCxikLgwjxJ+ogKUEW2hmXD3kCHW6DuNf2XDPjiLF -ZWde3aRbqMeqJgNxIUyeI70uLmP7mabanr4PhIYvLomKYmi7Ybg9lNgaa5AUqE0R -9wKBgB8LYjinisX8pGaSfGpxEHQu/giH9SqUyXoDyk/SkqmhmayB341P+x3Zdlrx -xBVYsxdQRbxbiO2CdihPDbiT4wXS+p9mReOJeb/QluzGpPuloSkx87uW1kcErZ/m -vr8opZ6ITlSSQeigwabVpkthDzNgQbEeHblbX0F9io56vX8w ------END RSA PRIVATE KEY----- diff --git a/t/keys/u1.pub b/t/keys/u1.pub deleted file mode 100644 index 3838e9a..0000000 --- a/t/keys/u1.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAnqiW8xCSfg/JO7acBvarVghAyM2Xw2ZzwaQN5xOg/XOSt2wV5wsT32hmPg/v8NqXcjKXMyI76ZO4U9To9yDvs6xKC9NwFmV6prjf6IC2gryykg2LBvWKIrcr/tNBnKgDAs7SDtf1EEN5Byf0mTcy9c9eVMsxvwm3oXqXKCm1YkKeaWOEd0xuRMRAVHlfon4M67r/heDZho9QLwvyDhorefhoLGOzrUbsXbcTHAEkt+m56swz7d7yZVSXckqrQ+KyY6cVjm1kdBvO7B34TpjMYubv4a3WPC98QUAFSRir3+HW43JFU/ty4Z7pCbpDBPctvg1fdCzIx1sg54zE6MZGnQ== tester@sita-wd.atc.tcs.com diff --git a/t/keys/u2 b/t/keys/u2 deleted file mode 100644 index f259739..0000000 --- a/t/keys/u2 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEowIBAAKCAQEA9NNn9rpF3+1reKJxfqQcjmugWkvN4VZfi6Uln1q6RJlohh6G -FhSTbA+puGjWy03VROa2K3TUxKKtPHMCFIOVpnNN3e4kAJbW1P/DbeYL5/kYo0tc -uNexFch2/4FrcykBoxZvTGUH1hJNIANjcAs+u+rzbwyiH5iQKIukfe7de2LrJEyw -/n05yAkMVfc2E97ge6X7rwGOpKaqMyy5S5Wjr6YxD54CAybdys9XWbwZYFx9s14j -PFK0frtXE7qFmR+hch9rgEro3jvIqLkQpO2u/ZfcoHllRDTqXZVGRGfrfZ8UHYsn -32+iApLFFdKcPkTtJokmq++b61NoQVQfk54yvQIBIwKCAQBM8fwaV8zRWT8IqBUK -i1lultqgCTITns2SSdifzA6n2HFOuSLTvVLncqMOElIio27pxNoq6jQ9zLoaUAf3 -0ZVu08gD68IsEiZC8UwMmMHp0fHM68yvHzenwqkOeSHFG4Qr8RuqS6NgiWiySjUx -16YAi6uX7gcRPpO0+LAKUmLdoiGLjF/bpMAyhfvB/EzAQESoscEhGywwboJfMJGK -FlKdazqYlYy4txjw53bUbuN/lsQYToAbe68zIVTBkKVZlBrBeOp1FPPoNXtaOuWx -tXsaiQIBXbJY9AaI9wCJsK9pRU92k23gyBENNHC/hPvyK0JWpkRhd9rsl79BG/xh -dJ6LAoGBAP6RSyKtjbwb6tuZWMpGeY87WnM2JXmuNRwR2n3KnM5VOsgLgyTKx11Y -9+B51b0yx3hVKJ6xbs4pjq/MLgAGXgfzh0VBJUjxiVKfHc0qhrUg1KAmGbhczYkE -69/oQP7d0vsgC7gR3xr0QMI8v9tZ9UDsPrzqOKZ4162YlNAmOv19AoGBAPY0FF1Q -QF/0FsnfB0kMmNPhuNwmy3EWhkxmzvgPa/0Ic1F7s2NJu9P+9vzHnM4jQPKFO75h -/USD8SU8wEjqGOdFi8fh4vTyk+2Na3/n37f8sjYY77tAvAa8Ix7Ul6c5knk+ZIaN -/K3kThB3sXCzOmTJfzMXOZn2DULZlM9Okw5BAoGBAKdJiSVqvDnJM+9kxVG5SJFS -46rLz3vY4RJyId2iZws/UoN1R400zCdmWb9mAXxUkbV5yjxl+FuXpuiNfVB5NnpA -8n33nCieuVONIjZdxjyDSeWVYVvlNpveqaHEgnuZFZ21+RKPZrnw91sR+muS4v7H -IenbvtPLwO5rlP3P+uEXAoGBAOgieZnPUqOc/4sivbnnTkQd93B8WWqgNXs8XL3/ -6XmLn+29xmTtv7lA2j7K1axqYc64ImML7suSWGTwIwLrWU8Vr63U+o8t2+6bSBmC -2j/CXuKMikLWoqdDrBXBIUXl0z8dkfs1apVTmg+Gy99J5pmKyGNfCmyXiNihQync -XsRLAoGBAN50w7bf+lGJ0KDoMIAGRqLJpm0NLd980R7j+yR49g8N/RjKrXz8zFuo -7NJztYXT1oBNv9HuO7Aq0z7gGQiNbjarGVgblqZi3RN7IE8/Cs4Ev50BLVWM1WTN -x4yFgK1OC3FfJaY6rn8u9y0dygTFvKrQx68gO+RgAIb4t/ZUoySW ------END RSA PRIVATE KEY----- diff --git a/t/keys/u2.pub b/t/keys/u2.pub deleted file mode 100644 index 11fa108..0000000 --- a/t/keys/u2.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA9NNn9rpF3+1reKJxfqQcjmugWkvN4VZfi6Uln1q6RJlohh6GFhSTbA+puGjWy03VROa2K3TUxKKtPHMCFIOVpnNN3e4kAJbW1P/DbeYL5/kYo0tcuNexFch2/4FrcykBoxZvTGUH1hJNIANjcAs+u+rzbwyiH5iQKIukfe7de2LrJEyw/n05yAkMVfc2E97ge6X7rwGOpKaqMyy5S5Wjr6YxD54CAybdys9XWbwZYFx9s14jPFK0frtXE7qFmR+hch9rgEro3jvIqLkQpO2u/ZfcoHllRDTqXZVGRGfrfZ8UHYsn32+iApLFFdKcPkTtJokmq++b61NoQVQfk54yvQ== tester@sita-wd.atc.tcs.com diff --git a/t/keys/u3 b/t/keys/u3 deleted file mode 100644 index 561bbc8..0000000 --- a/t/keys/u3 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEAs7YceedkXYoPDinUWKISRv48DbcAdIgw+bm/EBwsHcBHxr8L -bX6jNTRQifp7aiCNeoW7U+sqDsJ9r4CqDWagXg/o2uhYDbdizz3Gpiwslqi0tvu+ -e3/0J327wTB81v2pZ8j6DILR+kN+S8LXUHzUsFus8XHK3SvyWqlxqRBOpkP3tqB5 -Grfjuwn9IJJcvqcqkjXJcDuij9RE7EHmWGEv6c4MtS5mTpXGy9xPnehwcGzm5fEi -sxzLts/F6YgC6p7D7ZxR0Hm6YQteIFjhFkIMqNjPu78jrEfWD84C+wmpypSjVFMW -QaH+qDeeDWRE6WUufH+Uirzm7DLvHdnsgCeGoQIBIwKCAQBhjr8AWQqZLbBmxkAS -26OFn/S2/PGeWI+dghdDQn5ZSx+mZ7W/GNxBdCu4nes5nKSS+CPdGUK3jib433JB -yf9JAVKFdtC2/ScCycOcCVoIpLnfrTuE3w+DJv+GIaLbG/zgkaxP7z7Jr5xVA17x -LdKLn3sj+/HIhZIxN2mWSq5aQT4GElmiyXTcOLr/WyFZwhlwCAWPFlSxnqUEq+fi -qgPOxmI+w4a+GnrulqDYEpGvY8g0Z87yJHr8oROOhPRVWp/km3fodA4gBanwzK7P -8bvYtcMxOdK6cD85zgGbuaI+IB0jP9NQijBr6a8I8Mxj2VUHk9VtGrv+HcUZ39g/ -V99PAoGBAOTWbNbEmcgfJutlqEBgbl36g4hkpYazSQZlcp1IkHP4V9kk1+Zyibsq -9HtQ4JCT0CEJ7pdXNnfeRbG1jgnovWTqFGxHyPDqwYtHuQ6qMKLVQA/qqBxbp4AN -sPQqy2SdMPcr5Hb9di3WX/ztlMiZlk8Nd73DSQXum0+2j3PEuxO3AoGBAMkK6WkB -02zC2OGuoI4XMZBClgDpDqhEgfOZJtPMl4yCCMH0TKKYzcrb7U2xh1o7Nc5TDWx1 -bTtlfE5+SGzQcFNr4sVIRspjuKdFd53figJR3iJbdp4UImhGyf5gif9cocdTSeQb -mQvVKSjL+PZUgeR8BPzIk3k29P5thbR8oihnAoGBAJzqzkogaXNIj7dbppKLRF2z -GF2G1+dWXfXB6DFWVGzHjLIn5IDDkaTqQT6d29DaYtTTnEqE8iZPRbuvsdrovGJ0 -oEo/2j7M3HzDd5UG/MdtqEVttRrCgXxhKOHxdYbSMDR13n16mi4PV8NhFZDeWHC4 -xyMJkSijnbMA12VTs3s7AoGBAInbmL0IkPofNaIRWCbrVS+4oV+1wOhpfa5aY8Rv -CNVgewinhQHH3ZJq692BDFshSXeJaEpfJlSdXI2YbC1burzcQ7p6tDMCjT+AF4Iy -4kq7y4VGCDHh67U32veSp8UMUa1AbS6z1qkHMiqaftTMO8/gA2uCOT0s/8RoW672 -YJC7AoGAbpYmmhMp/hITKqLxFmzN+mK0lt8Ulgqo+xhoPycRXGJ0LcQntwL28Bvv -gKU4L0YockExwedM4Xjgvos0bj8vtAmFsVqWTiVOMIr1hMwPj79cyMgOILO5fJ2T -2s2dafFQiysUddn9RlDpcm18/Nn3CYOc5ZZvMtqMWe8nFwjklLE= ------END RSA PRIVATE KEY----- diff --git a/t/keys/u3.pub b/t/keys/u3.pub deleted file mode 100644 index a0ecdf6..0000000 --- a/t/keys/u3.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAs7YceedkXYoPDinUWKISRv48DbcAdIgw+bm/EBwsHcBHxr8LbX6jNTRQifp7aiCNeoW7U+sqDsJ9r4CqDWagXg/o2uhYDbdizz3Gpiwslqi0tvu+e3/0J327wTB81v2pZ8j6DILR+kN+S8LXUHzUsFus8XHK3SvyWqlxqRBOpkP3tqB5Grfjuwn9IJJcvqcqkjXJcDuij9RE7EHmWGEv6c4MtS5mTpXGy9xPnehwcGzm5fEisxzLts/F6YgC6p7D7ZxR0Hm6YQteIFjhFkIMqNjPu78jrEfWD84C+wmpypSjVFMWQaH+qDeeDWRE6WUufH+Uirzm7DLvHdnsgCeGoQ== tester@sita-wd.atc.tcs.com diff --git a/t/keys/u4 b/t/keys/u4 deleted file mode 100644 index be1b027..0000000 --- a/t/keys/u4 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEAyjyPl0ARSBYZTuZtkPJH+3wqruonGvchQpR+RgUjJKbPJqgv -dbuqaiTUMHnEDzTPWM54IBP78OdGntcDxhUCgZKC9k2IZg0aT/EvwcavZswBrw/3 -GSJ22pr5VR/zBLoLBK1oQedJY1rMIo3LeqreyRo7gFnvSGX1s2VsmkrLhz687HM+ -64GII0RtoFj2wZ2ZL5ssT++Nt8mLypdwOHEiIZjtrqK5UtEvUrVvGVN0vICyqB/1 -mftzo9zjEj3BoBIQieOKLZOraHgsvUwdpYD52ASD3kAS5tiJbvpG9D81E5Zkfk4P -xDaKeRF5IFivxbM2MCztcGtJi5hRw9eU0evXrQIBIwKCAQAXHN0122+wd43dIaYf -MaHTmSlzE3Iu96wHm/Eskt9x5y2eBJe1rwwpY0tzQR24mFI2CPfJJtr29dwvaQe+ -3dRmlGa9ECzYdoaqDO+D3DFNk6hrx09wljl4EbYYW2w7DfKhcudX/Sz1aXZqWVkV -VVtKLuI6je91/QYjIYjBLR6THOiXZRePbzY2/zMktm35v625b5k3CS1BKbd8jAfY -zUf70ceOgFZlLT55ab1tAEQaMFI/UhJTl9oTKnnZF9ULc0HBqHo6/pbaxZ1rrlb7 -D0H/Wbqf/INtdpMI32OVRSdtyYo9GezBBLc1VkcSmA+o2eOUQe6jldt71welXSFX -fsPbAoGBAP2Xql6WyGvKVzksZOHL1Huh0x01UPSIdSIjnA5zQe1euZbCKUZDN939 -xPM8Xtno4nSMtLF6wbFS8iWJI1Ecp121rzG5dNSIvFYNjaXma44PlU70smrfGPTt -v2LKeXKiaZAaPo8b+qwhdfqgGyuCRqSsD6d5dEf3skGf6rRnoyRXAoGBAMwoFFIt -rAH3tDTyt9Kse+13N5J5Dk01J2QlMh0cKv7nc8TNln8aTW6uk0JjMkbud25xXSPD -yQ4pNxNdiehfOjN1sirv6y7lerVBiP6qT+pOHhPxrCoJ8g3zmDzPqKlwiVrNbKkP -UptE6JCdivs9+goy3F3fl8EYTI08/fyss4GbAoGBAKalfpXuDq070usOi2/PFppj -BxMxqjpLCyUQFhgf2t3QiJZFE88WOqfSpf7tKGNP5UVGhV6vwRzBeo2x5AIaJNcu -P+153w9SimRvTnRVlyLXClh06kY61eLIHq6iT879A4qU50gZs1sr7nF/J8wiaO/e -yHVecPwXzOlL1L+x0ZuJAoGARf8c6Pm3USG6IMg/BmcF6wRNkU4TiC97OEdEYcCD -xRwnsTCLXscwfbgyfSlTEQFNhPOq57DXOA4hgvt/vWJ6WslEZn4kv58iwc1TioOJ -HSIY8OUlFbpEXI4IT10j4lJ4PGOwOfaf+riKQDYDw9q8IMD7GN7yM5NNckDMHB30 -ZvMCgYEAstjuwtdD5qNQaGL4dCplVHmfBohXpZayhAQN3ziY/yScIziM9uBCGcKv -E8toH0EgJBp06+dWZ/2mzgByEhlqKwfbGd1Z33ed3zzQNl7NAMzqKHOtN7KPeNLx -5mzEOwryf9WqPGpjAnFyIYF/ZTN9JgHWUqTI1jVW4lefOw2Ji8w= ------END RSA PRIVATE KEY----- diff --git a/t/keys/u4.pub b/t/keys/u4.pub deleted file mode 100644 index 36ef4f1..0000000 --- a/t/keys/u4.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyjyPl0ARSBYZTuZtkPJH+3wqruonGvchQpR+RgUjJKbPJqgvdbuqaiTUMHnEDzTPWM54IBP78OdGntcDxhUCgZKC9k2IZg0aT/EvwcavZswBrw/3GSJ22pr5VR/zBLoLBK1oQedJY1rMIo3LeqreyRo7gFnvSGX1s2VsmkrLhz687HM+64GII0RtoFj2wZ2ZL5ssT++Nt8mLypdwOHEiIZjtrqK5UtEvUrVvGVN0vICyqB/1mftzo9zjEj3BoBIQieOKLZOraHgsvUwdpYD52ASD3kAS5tiJbvpG9D81E5Zkfk4PxDaKeRF5IFivxbM2MCztcGtJi5hRw9eU0evXrQ== tester@sita-wd.atc.tcs.com diff --git a/t/keys/u5 b/t/keys/u5 deleted file mode 100644 index f525303..0000000 --- a/t/keys/u5 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEoQIBAAKCAQEAonPym8U2ElyMBPVtk5rLqz44QG9pSTTpOj8AmqBRpy9W0B6C -4yuYf4oVNJMD3GEq6Y65uhmSmN/Nqi99++TtwrNPCRYwXHHa2ZUwHT6ow6Izkrnn -nzkkPBgpBOKmn/M8z7xlsQhmEBuKlUgYOrdnfRnkvOTTuF4Fq4jSpagOnLjpPlxr -KZ6vcdvVjZ3kWtZEI+HowS1IKxZsI0UbP/FzSUFrlxLAedrPFBUiUfdl/VPOMs7t -AjHFUMepq4vzjQlupuJEhaB24nCQFlV5gLQjrGgRs3gs6AJRCYMtE5edsllG1hJV -ro2UGiH8pvOOso4LYKbyiHuUjuToRlUNjpqRqQIBIwKCAQBTjBZevTHATNpLsWuN -vVLNGK83FLnN4LJ1ugBPhaZV+xa0LPLbOv34cuZVjW+zKqha26/5TvrviQqvS5/g -oZ7ZKQQTTT1xXyAYINbqd/8Fhp4uM7jyzO4QRvCGK2uit5ueCR5bC6I0K2vXvq1g -Boz+glhhJTmvRkwPEyqBFJnM8JBAxp57WEjC0tK6Cw8soKEgfwe6dUouRRdEA6q7 -+Z86azz8YkenUM8o/j6IRshJGBBpOfF1c6NY1M9CLebSKIocg9jxBqdMZHnzpqSW -qxjibSUGQWU/7o45TRAefdpQR6+HLR1mGxvxtU94/AH94MjmUv827Nd6OhMyynh5 -s0cjAoGBAMwm96LBouDUsmhThbK27a3B0CnlkS1FYkwuNbudWoS+kGPktu3S/rqe -i8Czn6mQEKaEvY0ECcnPaSN9Nno7G26TrrUGjIAjWFTKWJ4HognuLj0eBf+OLfrg -WgcXZJtK4vk8hY26DsleIO8DEg/Vkg0x9EozEI4Qbg3IRbvroiHzAoGBAMu14pQ/ -QevNAUVCHyJbWutNjIUp8O42ZqubegVt+Kq1iy2OuSrhhg/et3ZABv4YBiQ2y1/S -qq+p+Z3YUY3Vu54xFr7/v+pVOGqc437+xWlbSSkJSFpBErNkaKMWPkuu6uoStQ7K -ZoYtIIFVE+zEqneLSincZZxmIl/UMErvOEjzAoGAF1TpGeo+gBhO51oAprXSBTq4 -tFTAIm5UYHpPSKRE2/iFh8JeDI0kbRlvDrVxVTUJN5okSqFgNFI35sx7QStTl5vZ -c8Y78WMgCbC5q6kZ1T/KxSgAr332oFQni8gowUpjFSt8+kEmQuYvpkl+aDWqSqaf -k3OM3QkxJiWET/2sISMCgYBLqfUSfeVI9F+OwMm8TdFQFX1WCEOLrc5c/zvzY1xc -qdSb5I3rWxSJjTzUJmj/SsBz2daCrVVXMIFJQbfkOXGSh0L2fD/388R/Xtgn2vjd -/VWwKATuUq8ssEQfUWeYdCteQXZzNTwF84EaGEk6r3KELGwA63YyxtmRTtAb1TIp -uQKBgQC60e8R2YqZ6ylmPygjOAMw3rsEyDYrEtMqIKZIgrjAvEnrhyif9LS2a1aF -6Hg3IJmeTVt6ql5iDYK3nfnv/rSLs2vAdGwD082Lasx/bk8kDro0fSVylI50g1/U -BRzkoHBZb6mKKJfFNzDr0Py790lmsp3DYIYPxoouvSgDvcKJZw== ------END RSA PRIVATE KEY----- diff --git a/t/keys/u5.pub b/t/keys/u5.pub deleted file mode 100644 index 95b8d39..0000000 --- a/t/keys/u5.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAonPym8U2ElyMBPVtk5rLqz44QG9pSTTpOj8AmqBRpy9W0B6C4yuYf4oVNJMD3GEq6Y65uhmSmN/Nqi99++TtwrNPCRYwXHHa2ZUwHT6ow6IzkrnnnzkkPBgpBOKmn/M8z7xlsQhmEBuKlUgYOrdnfRnkvOTTuF4Fq4jSpagOnLjpPlxrKZ6vcdvVjZ3kWtZEI+HowS1IKxZsI0UbP/FzSUFrlxLAedrPFBUiUfdl/VPOMs7tAjHFUMepq4vzjQlupuJEhaB24nCQFlV5gLQjrGgRs3gs6AJRCYMtE5edsllG1hJVro2UGiH8pvOOso4LYKbyiHuUjuToRlUNjpqRqQ== tester@sita-wd.atc.tcs.com diff --git a/t/keys/u6 b/t/keys/u6 deleted file mode 100644 index 8896e8a..0000000 --- a/t/keys/u6 +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEApqmFYqqjj1pPRGICRIIYLTF9JoLz+oU5nf+jei7WVxlE4Z7T -AtUn/8ldZiJb8+OKtX0h/P6cuxcs3ZclAeICC5DYZ+zfgb0blIrz3n7x4EC8Ti/w -PhIL3OjmoUIl3PqvxE9QmwIMG5TfIIOkvGBZAGB2YiyusohLqqJ26m/SY29yzpf8 -zqu2aJLV+rYeDPGgkOFVFaTAYxTWDUZAqFEuBZm1Nhs413dOa2oBDT+DY/TnY7D0 -TDbhai3/nX1v0Mx3F96aGKxPfQsiQs8bniAZa+F5NO5F67avq0YtKF24JmP8zCm1 -WQ2I/CqjtxbBKJNPKZAE25VnJi7+BRStFAwXIwIBIwKCAQEAihduhPPJWYVXnw9g -9u9zHiGw1sRGfx3t6VAoXexLMjmCN0kVPNyAOlZjVKAgTbyI34TwRqcUJf1CbnXr -dpaxPMh4yyNaGwpnTzFNuFqN5bH7HDZZWABS+N47b6vWOsEVSuKh34VafUDWIkEw -uVclLDKrO2bZ5GJNUt5ih7u880xgibWN6sm6UdO5SL/Y+0imWwipGDFERBBexBT9 -xZwFTilSb9Eo+WxfLJQhqRnbhPQvH107oId4v5oxw5FvQSM7JSF2hyTLbz7pXMIb -sjolhxIikhok3S991xPRl62Q38rl6RitzsrN1/UVl24qN0CUmu3qGqO7YRix4m1h -K3FS6wKBgQDSpqRGEy41eUlmwNhXz8K0pSJkYB3j3OgaxlorDebrE5GVT0o4SKaB -qyx4z0XjARrrQxU91OoCtotsdIkjYtKArQzgqv4Wrc6MoulTdpmSCxGtwxgvSTSv -YOEsywDomS6c/hwziTciRyPAD6eUxOle93qmX2lMsvMNcwiHoYn60QKBgQDKipQu -w2+OaThAKK+dDejlWpEtdQTH7WhsNvYPdvSU0X36M7oVuhA2k0Qh0v26wmPU6RmI -/C3IjpkHptrXz+ns1BNE3DsxoUAa4H/tWUBaFhIu9ni+AX2mNSnFnXmt8d9kzzZX -xJsEWBzkE/ve9NeVHtLrq3gmpcXcFteVsNYHswKBgAwJhbrchkwy0P6OrUbYrApS -lEBAAbU/0r+zkB+3psuat9ylcfSWb+onCdsEh6aSWU9FqXE/XdRE8gYyi35dax1L -t5fPQbgnMF/Oy4EcuFF8+bIoZ8gwEaOfIs9cDq40o5PxQ3CowVJqdxJKCZN492SD -K5R6ewuydEnpUPHOt21rAoGAEVxV2B9hVVl52Z0WXes/2SUFISdJjXq/zsLh5BGC -rauOdIgXQ7Dc0XpWTArFSoWwyRtLVOJqUwToi6CWakUFbBItiY84RhUiwHmkkK/g -8cdgpPCOAahbOiHQYWVE8acEhPvRdTy81HyUwxen3+kZyvQDc0k2LzLH0QlFrb6z -Qn0CgYEAmQqc19g5dEpHfbdOPeSrgdf3urcyt6ot1jL9i6B2U6akfvp5GFhGoAs/ -C6q6mplU0by/bmMtYyRhY+7tux2Wz5yaMDwUU5/jnECtt8W7gDi5Y6vaRTIc/2n/ -j53jeI8PJgKNHeF+tbILdUUHDsTLvx/PWVkae1SzDRY8swbIxyI= ------END RSA PRIVATE KEY----- diff --git a/t/keys/u6.pub b/t/keys/u6.pub deleted file mode 100644 index d0b5fbb..0000000 --- a/t/keys/u6.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEApqmFYqqjj1pPRGICRIIYLTF9JoLz+oU5nf+jei7WVxlE4Z7TAtUn/8ldZiJb8+OKtX0h/P6cuxcs3ZclAeICC5DYZ+zfgb0blIrz3n7x4EC8Ti/wPhIL3OjmoUIl3PqvxE9QmwIMG5TfIIOkvGBZAGB2YiyusohLqqJ26m/SY29yzpf8zqu2aJLV+rYeDPGgkOFVFaTAYxTWDUZAqFEuBZm1Nhs413dOa2oBDT+DY/TnY7D0TDbhai3/nX1v0Mx3F96aGKxPfQsiQs8bniAZa+F5NO5F67avq0YtKF24JmP8zCm1WQ2I/CqjtxbBKJNPKZAE25VnJi7+BRStFAwXIw== tester@sita-wd.atc.tcs.com diff --git a/t/rollback b/t/rollback index 43894e3..fd1c02c 100755 --- a/t/rollback +++ b/t/rollback @@ -1,11 +1,8 @@ #!/bin/bash -export TESTDIR=$PWD - -cd +cd $HOME rm -rf gitolite-admin td -tar xf rollback.tar +tar xf client-rollback.tar mkdir td -scp -q $TESTDIR/rollback.server gitolite-test@localhost:rollback || { echo scp failed; exit 1; } -ssh gitolite-test@localhost ./rollback $GQT +$TESTDIR/rollback.server diff --git a/t/rollback.server b/t/rollback.server index 17b2694..2bbeb74 100755 --- a/t/rollback.server +++ b/t/rollback.server @@ -1,15 +1,6 @@ #!/bin/bash -cd +cd $HOME rm -rf .ssh .gitolite .gitolite.rc repositories gitolite-install /tmp/glrb bin share -tar xf rollback.tar -( cd /tmp; tar xf ~/rollback2.tar ) - -# if arg1 is a directory, we have to overwrite sources from there (see commit -# message for details) -if [ -d "$1" ] -then - cd .gitolite - /bin/cp -a $1/{src,hooks} . - cd -fi +tar xf server-rollback.tar +( cd /tmp; tar xf ~/server-rollback2.tar ) diff --git a/t/test-driver.sh b/t/test-driver.sh index ae88c5a..3b6c06e 100755 --- a/t/test-driver.sh +++ b/t/test-driver.sh @@ -1,10 +1,15 @@ #!/bin/bash +# are we in the right place +cd ${0%/*} +git rev-parse --show-toplevel || die should run t/test-driver.sh from a clone of gitolite +export TESTDIR=$PWD + # see some sample tests for how to use these functions; there is no # documentation # REPO_BASE has 2 manifestations in the output of various commands -export TEST_BASE=$(perl -e 'do "../conf/example.gitolite.rc"; print $REPO_BASE') +export TEST_BASE=$(gl-query-rc REPO_BASE) [ -z "$TEST_BASE" ] && { echo TEST_BASE not set >&2; exit 1; } TEST_BASE_FULL=$TEST_BASE [ "$TEST_BASE" = "repositories" ] && TEST_BASE_FULL=/home/gitolite-test/repositories diff --git a/t/update-gitolite b/t/update-gitolite deleted file mode 100755 index fab9924..0000000 --- a/t/update-gitolite +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -export TESTDIR=$PWD - -rm -rf ~/junk.ga -mv ~/gitolite-admin ~/junk.ga - -# install it -src/gl-easy-install -q gitolite-test localhost tester - -# make the rollback.tar files on both sides -cd -tar cf rollback.tar gitolite-admin -ssh gitolite-test@localhost tar cf rollback.tar .ssh .gitolite .gitolite.rc repositories gitolite-install -ssh gitolite-test@localhost tar -C /tmp -cf \$HOME/rollback2.tar glrb From 7729433c05f24256a146d9e13a47733133de7165 Mon Sep 17 00:00:00 2001 From: Sitaram Chamarty Date: Tue, 11 Oct 2011 08:10:06 +0530 Subject: [PATCH 2/5] (test suite) remove hardcoded username 'gitolite-test' --- t/t10-all-yall | 2 +- t/t11-deny-repo | 2 +- t/t57-daemon-gitweb | 30 ++++---- t/t58-daemon-gitweb-wild | 88 +++++++++++------------ t/t60-daemon-gitweb-via-setperms | 120 +++++++++++++++---------------- t/t64-write-able | 10 +-- t/t67-hub | 2 +- 7 files changed, 127 insertions(+), 127 deletions(-) diff --git a/t/t10-all-yall b/t/t10-all-yall index 805278a..a3e1f54 100644 --- a/t/t10-all-yall +++ b/t/t10-all-yall @@ -1,7 +1,7 @@ # vim: syn=sh: has_export_ok() { runremote ls -al $TEST_BASE_FULL/$1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE_FULL/$1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE_FULL/$1.git/git-daemon-export-ok" } does_not_have_export_ok() { diff --git a/t/t11-deny-repo b/t/t11-deny-repo index 673a80d..6974003 100644 --- a/t/t11-deny-repo +++ b/t/t11-deny-repo @@ -44,7 +44,7 @@ cannot_push() { has_export_ok() { runremote ls -al $TEST_BASE_FULL/$1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE_FULL/$1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE_FULL/$1.git/git-daemon-export-ok" } does_not_have_export_ok() { diff --git a/t/t57-daemon-gitweb b/t/t57-daemon-gitweb index 52701d0..ff23f22 100644 --- a/t/t57-daemon-gitweb +++ b/t/t57-daemon-gitweb @@ -17,7 +17,7 @@ do name "daemon access for testing repo" runremote ls -al $TEST_BASE/testing.git/git-daemon-export-ok [ "$ais" = "0" ] && expect "ls: cannot access $TEST_BASE/testing.git/git-daemon-export-ok: No such file or directory" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test .* $TEST_BASE/testing.git/git-daemon-export-ok" + [ "$ais" = "1" ] && expect "$USER $USER .* $TEST_BASE/testing.git/git-daemon-export-ok" name "INTERNAL" echo " @@ -33,8 +33,8 @@ do runremote ls -al $TEST_BASE/bar.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -44,10 +44,10 @@ do R = daemon " | ugc runremote ls -al $TEST_BASE/bar.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" name "add foo with gitweb access" echo " @@ -62,8 +62,8 @@ do " | ugc expect_push_ok "master -> master" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 8 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 20 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 8 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 20 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -76,8 +76,8 @@ do " | ugc expect_push_ok "master -> master" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 16 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 28 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 16 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 28 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -95,8 +95,8 @@ do expect_push_ok "master -> master" expect "remote: Initialized empty Git repository in $TEST_BASE_FULL/baz.git/" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 24 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 36 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 24 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 36 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -104,7 +104,7 @@ do expect "bar.git" expect "baz.git" runremote ls -al $TEST_BASE/baz.git/description - expect "gitolite-test gitolite-test 17 .* $TEST_BASE/baz.git/description" + expect "$USER $USER 17 .* $TEST_BASE/baz.git/description" runremote cat $TEST_BASE/baz.git/description expect "this is repo baz" @@ -114,7 +114,7 @@ do " | ugc expect_push_ok "master -> master" runremote ls -al projects.list - expect "gitolite-test gitolite-test 36 .* projects.list" + expect "$USER $USER 36 .* projects.list" runremote cat projects.list expect "testing.git" expect "foo.git" @@ -124,7 +124,7 @@ do expect "\[gitweb\]" expect "owner = sitaram" runremote ls -al $TEST_BASE/testing.git/description - expect "gitolite-test gitolite-test 25 .* $TEST_BASE/testing.git/description" + expect "$USER $USER 25 .* $TEST_BASE/testing.git/description" runremote cat $TEST_BASE/testing.git/description expect "this is the testing repo" diff --git a/t/t58-daemon-gitweb-wild b/t/t58-daemon-gitweb-wild index b5ed6ed..f76b6c8 100644 --- a/t/t58-daemon-gitweb-wild +++ b/t/t58-daemon-gitweb-wild @@ -27,8 +27,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -39,18 +39,18 @@ do R = daemon " | ugc runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" name "add one more repo" runlocal git ls-remote u1:bar/u1/try2 runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -63,8 +63,8 @@ do bar/u1/try3 = \"this is bar/u1/try3\" " | ugc runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 16 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 28 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 16 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 28 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -77,10 +77,10 @@ do name "add try3 project" runlocal git ls-remote u1:bar/u1/try3 runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 16 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 28 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 16 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 28 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -96,10 +96,10 @@ do echo " " | ugc runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 32 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 44 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 32 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 44 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -119,8 +119,8 @@ do expect "\[gitweb\]" expect "owner = owner2" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 60 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 60 .* projects.list" runremote cat projects.list expect "bar/u1/try2.git" @@ -131,8 +131,8 @@ do " | ugc expect_push_ok "master -> master" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 60 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 60 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -143,8 +143,8 @@ do name "add try4 project" runlocal git ls-remote u1:bar/u1/try4 runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 64 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 76 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 64 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 76 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -188,8 +188,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -200,18 +200,18 @@ do R = daemon " | ugc runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" name "add one more repo" runlocal git ls-remote u1:bar/u1/try2 runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -224,8 +224,8 @@ do bar/u1/try3 = \"this is bar/u1/try3\" " | ugc runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 20 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 32 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 20 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 32 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -241,10 +241,10 @@ do name "add try3 project" runlocal git ls-remote u1:bar/u1/try3 runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 20 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 32 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 20 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 32 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -263,10 +263,10 @@ do echo " " | ugc runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 40 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 52 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 40 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 52 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -289,8 +289,8 @@ do expect "\[gitweb\]" expect "owner = owner2" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 72 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 72 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry2.git" @@ -301,8 +301,8 @@ do " | ugc expect_push_ok "master -> master" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 72 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 72 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" @@ -313,8 +313,8 @@ do name "add try4 project" runlocal git ls-remote u1:bar/u1/try4 runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 80 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 92 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 80 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 92 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "testing.git" [ "$ais" = "1" ] && expect "testing.git" diff --git a/t/t60-daemon-gitweb-via-setperms b/t/t60-daemon-gitweb-via-setperms index c1bea6b..489554c 100644 --- a/t/t60-daemon-gitweb-via-setperms +++ b/t/t60-daemon-gitweb-via-setperms @@ -28,8 +28,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try1.git" @@ -37,8 +37,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try2.git" @@ -47,10 +47,10 @@ do expect "READERS daemon" runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try1.git" @@ -61,8 +61,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 16 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 28 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 16 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 28 .* projects.list" runremote cat projects.list expect "bar/u1/try2.git" @@ -71,10 +71,10 @@ do name "add default daemon access" runlocal git ls-remote u1:bar/u1/try3 runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 16 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 28 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 16 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 28 .* projects.list" runremote cat projects.list notexpect "bar/u1/try3.git" @@ -85,8 +85,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try4.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try4.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 32 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 44 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 32 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 44 .* projects.list" runremote cat projects.list expect "bar/u1/try4.git" @@ -95,10 +95,10 @@ do runlocal git ls-remote u1:bar/u1/try5 runremote ls -al $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 60 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 60 .* projects.list" runremote cat projects.list expect "bar/u1/try5.git" @@ -107,10 +107,10 @@ do runlocal git ls-remote u1:bar/u1/try6 runremote ls -al $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 64 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 76 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 64 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 76 .* projects.list" runremote cat projects.list expect "bar/u1/try6.git" @@ -121,8 +121,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 60 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 60 .* projects.list" runremote cat projects.list notexpect "bar/u1/try6.git" @@ -132,10 +132,10 @@ do runlocal git ls-remote u1:bar/u1/try7 runremote ls -al $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok [ "$ais" = "0" ] && expect "ls: cannot access $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok: No such file or directory" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok" + [ "$ais" = "1" ] && expect "$USER $USER .* $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 76 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 76 .* projects.list" runremote cat projects.list [ "$ais" = "0" ] && notexpect "bar/u1/try7.git" [ "$ais" = "1" ] && expect "bar/u1/try7.git" @@ -145,10 +145,10 @@ do runlocal git ls-remote u1:bar/u1/try8 runremote ls -al $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 48 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 76 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 48 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 76 .* projects.list" runremote cat projects.list notexpect "bar/u1/try8.git" @@ -159,8 +159,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try9.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try9.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 64 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 92 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 64 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 92 .* projects.list" runremote cat projects.list expect "bar/u1/try9.git" @@ -199,8 +199,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try1.git" @@ -208,8 +208,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try2.git" @@ -218,10 +218,10 @@ do expect "READERS daemon" runremote ls -al $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try1.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 0 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 12 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 0 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 12 .* projects.list" runremote cat projects.list notexpect "bar/u1/try1.git" @@ -232,8 +232,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try2.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 20 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 32 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 20 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 32 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry2.git" @@ -242,10 +242,10 @@ do name "add default daemon access" runlocal git ls-remote u1:bar/u1/try3 runremote ls -al $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try3.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 20 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 32 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 20 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 32 .* projects.list" runremote cat projects.list notexpect "bar%2Fu1%2Ftry3.git" @@ -256,8 +256,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try4.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try4.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 40 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 52 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 40 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 52 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry4.git" @@ -266,10 +266,10 @@ do runlocal git ls-remote u1:bar/u1/try5 runremote ls -al $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try5.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 72 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 72 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry5.git" @@ -278,10 +278,10 @@ do runlocal git ls-remote u1:bar/u1/try6 runremote ls -al $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 80 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 92 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 80 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 92 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry6.git" @@ -292,8 +292,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try6.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 72 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 72 .* projects.list" runremote cat projects.list notexpect "bar%2Fu1%2Ftry6.git" @@ -303,10 +303,10 @@ do runlocal git ls-remote u1:bar/u1/try7 runremote ls -al $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok [ "$ais" = "0" ] && expect "ls: cannot access $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok: No such file or directory" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok" + [ "$ais" = "1" ] && expect "$USER $USER .* $TEST_BASE/bar/u1/try7.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 92 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 92 .* projects.list" runremote cat projects.list notexpect "bar/u1/try7.git" notexpect "bar/u1/try7.git" @@ -318,10 +318,10 @@ do runlocal git ls-remote u1:bar/u1/try8 runremote ls -al $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok - expect "gitolite-test gitolite-test .* $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok" + expect "$USER $USER .* $TEST_BASE/bar/u1/try8.git/git-daemon-export-ok" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 60 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 92 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 60 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 92 .* projects.list" runremote cat projects.list notexpect "bar%2Fu1%2Ftry8.git" @@ -332,8 +332,8 @@ do runremote ls -al $TEST_BASE/bar/u1/try9.git/git-daemon-export-ok expect "ls: cannot access $TEST_BASE/bar/u1/try9.git/git-daemon-export-ok: No such file or directory" runremote ls -al projects.list - [ "$ais" = "0" ] && expect "gitolite-test gitolite-test 80 .* projects.list" - [ "$ais" = "1" ] && expect "gitolite-test gitolite-test 112 .* projects.list" + [ "$ais" = "0" ] && expect "$USER $USER 80 .* projects.list" + [ "$ais" = "1" ] && expect "$USER $USER 112 .* projects.list" runremote cat projects.list expect "bar%2Fu1%2Ftry9.git" diff --git a/t/t64-write-able b/t/t64-write-able index 10ec1fa..252af10 100644 --- a/t/t64-write-able +++ b/t/t64-write-able @@ -59,9 +59,9 @@ do expect "disabling following locations with message:" expect "first line" expect "^second line" - expect "/home/gitolite-test" + expect "/home/$USER" runremote ls -al .gitolite.down - expect "^.rw------- 1 gitolite-test gitolite-test .. ... .. ..:.. .gitolite.down" + expect "^.rw------- 1 $USER $USER .. ... .. ..:.. .gitolite.down" name "u1 push foo fail" cd ~/td/foo @@ -85,7 +85,7 @@ do runlocal ssh gitolite able en expect "give me '@all' or some reponame" runlocal ssh gitolite able en @all - expect "removed ./home/gitolite-test/.gitolite.down." + expect "removed ./home/$USER/.gitolite.down." runremote ls -al .gitolite.down expect "ls: cannot access .gitolite.down: No such file or directory" @@ -109,7 +109,7 @@ do expect "foo down" expect "$TEST_BASE/foo.git" runremote ls -al $TEST_BASE/foo.git/.gitolite.down - expect ".rw------- 1 gitolite-test gitolite-test .* ..:.. $TEST_BASE/foo.git/.gitolite.down" + expect ".rw------- 1 $USER $USER .* ..:.. $TEST_BASE/foo.git/.gitolite.down" name "u1 push foo fail" cd ~/td/foo @@ -137,7 +137,7 @@ do expect "bar/u2/r1 down" expect "$TEST_BASE/bar/u2/r1.git" runremote ls -al $TEST_BASE/bar/u2/r1.git/.gitolite.down - expect ".rw------- 1 gitolite-test gitolite-test .. ... .. ..:.. $TEST_BASE/bar/u2/r1.git/.gitolite.down" + expect ".rw------- 1 $USER $USER .. ... .. ..:.. $TEST_BASE/bar/u2/r1.git/.gitolite.down" name "u1 push foo" cd ~/td/foo diff --git a/t/t67-hub b/t/t67-hub index 822df71..9f1135e 100644 --- a/t/t67-hub +++ b/t/t67-hub @@ -57,7 +57,7 @@ do cd ~/td runlocal ssh u2 fork r1 child/u2/myr1 runremote ls -al $TEST_BASE/child/u2/myr1.git/gl-forked-from - expect "gitolite-test gitolite-test 3 .* $TEST_BASE/child/u2/myr1.git/gl-forked-from" + expect "$USER $USER 3 .* $TEST_BASE/child/u2/myr1.git/gl-forked-from" runremote cat $TEST_BASE/child/u2/myr1.git/gl-forked-from expect r1 runlocal git clone u2:child/u2/myr1 From f48a0b9d73c73387cc6dd9011d66de50afd029cb Mon Sep 17 00:00:00 2001 From: Sitaram Chamarty Date: Tue, 11 Oct 2011 08:42:41 +0530 Subject: [PATCH 3/5] (test suite) changes to test-driver for "all in one user" testing --- t/test-driver.sh | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/t/test-driver.sh b/t/test-driver.sh index 3b6c06e..83c2134 100755 --- a/t/test-driver.sh +++ b/t/test-driver.sh @@ -12,29 +12,30 @@ export TESTDIR=$PWD export TEST_BASE=$(gl-query-rc REPO_BASE) [ -z "$TEST_BASE" ] && { echo TEST_BASE not set >&2; exit 1; } TEST_BASE_FULL=$TEST_BASE -[ "$TEST_BASE" = "repositories" ] && TEST_BASE_FULL=/home/gitolite-test/repositories +[ "$TEST_BASE" = "repositories" ] && TEST_BASE_FULL=/home/$USER/repositories testnum=0 # remote local command runlocal() { "$@" > ~/1 2> ~/2; } # remote run command -runremote() { ssh gitolite-test@localhost "$@" > ~/1 2> ~/2; } +runremote() ( cd $HOME; "$@" > ~/1 2> ~/2; ) # remote list repositories -listrepos() { ssh gitolite-test@localhost "cd $TEST_BASE; find . -type d -name '*.git'" | sort > ~/1 2> ~/2; } +listrepos() ( cd $HOME; cd $TEST_BASE; find . -type d -name '*.git' | sort > ~/1 2> ~/2; ) # remote cat compiled pm -catconf() { ssh gitolite-test@localhost cat .gitolite/conf/gitolite.conf-compiled.pm > ~/1 2> ~/2; } +catconf() ( cat ~/.gitolite/conf/gitolite.conf-compiled.pm > ~/1 2> ~/2; ) catconfs() { ( - ssh gitolite-test@localhost cat .gitolite/conf/gitolite.conf-compiled.pm - ssh gitolite-test@localhost "cd $TEST_BASE; find . -name gl-conf | sort" - ssh gitolite-test@localhost "cd $TEST_BASE; find . -name gl-conf | sort | xargs cat" + cd $HOME + cat .gitolite/conf/gitolite.conf-compiled.pm + cd $TEST_BASE; find . -name gl-conf | sort + cd $TEST_BASE; find . -name gl-conf | sort | xargs cat ) > ~/1 2> ~/2 } # remote cat ~/.gitolite.rc -catrc() { ssh gitolite-test@localhost cat .gitolite.rc > ~/1 2> ~/2; } +catrc() ( cat ~/.gitolite.rc > ~/1 2> ~/2; ) # tail gitolite logfile -taillog() { ssh gitolite-test@localhost tail $1 .gitolite/logs/gitolite-????-??.log > ~/1 2> ~/2; } +taillog() ( cd $HOME; tail $1 .gitolite/logs/gitolite-????-??.log > ~/1 2> ~/2; ) hl() { # highlight function normal=`tput sgr0` red=`tput sgr0; tput setaf 1; tput bold` @@ -52,16 +53,12 @@ hl() { # highlight function capture() { cf=$1; shift; "$@" >& $TESTDIR/$cf; } editrc() { - scp gitolite-test@localhost:.gitolite.rc ~/junk >/dev/null - perl -pi -e "print STDERR if not /^#/ and /$1\b/ and s/=.*/= $2;/" ~/junk 2> >(sed -e 's/^/# /') - scp ~/junk gitolite-test@localhost:.gitolite.rc >/dev/null + perl -pi -e "print STDERR if not /^#/ and /$1\b/ and s/=.*/= $2;/" ~/.gitolite.rc 2> >(sed -e 's/^/# /') } addrc() { - ssh gitolite-test@localhost cat .gitolite.rc < /dev/null > ~/junk - tee -a ~/junk - echo '1;' >> ~/junk - scp ~/junk gitolite-test@localhost:.gitolite.rc >/dev/null + tee -a ~/.gitolite.rc + echo '1;' >> ~/.gitolite.rc } ugc () From fdf424ea4f70e42a4c353ea6e855ab1c426c34a4 Mon Sep 17 00:00:00 2001 From: Sitaram Chamarty Date: Tue, 11 Oct 2011 10:04:22 +0530 Subject: [PATCH 4/5] (test suite) dont put adc's in /tmp --- t/t64-write-able | 8 ++++---- t/t67-hub | 8 ++++---- t/test-driver.sh | 3 +++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/t/t64-write-able b/t/t64-write-able index 252af10..84acdf4 100644 --- a/t/t64-write-able +++ b/t/t64-write-able @@ -6,10 +6,10 @@ do editrc GL_BIG_CONFIG $bc editrc GL_WILDREPOS 1 - rm -rf /tmp/glt-adc - mkdir /tmp/glt-adc || die "mkdir /tmp/glt-adc failed" - cp ../contrib/adc/* /tmp/glt-adc - echo "\$GL_ADC_PATH = '/tmp/glt-adc';" | addrc + rm -rf $ADC_PATH + mkdir $ADC_PATH || die "mkdir $ADC_PATH failed" + cp ../contrib/adc/* $ADC_PATH + echo "\$GL_ADC_PATH = '$ADC_PATH';" | addrc runremote rm -f .gitolite.down # ---------- diff --git a/t/t67-hub b/t/t67-hub index 9f1135e..e8e2c07 100644 --- a/t/t67-hub +++ b/t/t67-hub @@ -6,10 +6,10 @@ do editrc GL_BIG_CONFIG $bc editrc GL_WILDREPOS 1 - rm -rf /tmp/glt-adc - mkdir /tmp/glt-adc || die "mkdir /tmp/glt-adc failed" - cp ../contrib/adc/* /tmp/glt-adc - echo "\$GL_ADC_PATH = '/tmp/glt-adc';" | addrc + rm -rf $ADC_PATH + mkdir $ADC_PATH || die "mkdir $ADC_PATH failed" + cp ../contrib/adc/* $ADC_PATH + echo "\$GL_ADC_PATH = '$ADC_PATH';" | addrc runremote rm -f .gitolite.down # ---------- diff --git a/t/test-driver.sh b/t/test-driver.sh index 83c2134..ca71a4e 100755 --- a/t/test-driver.sh +++ b/t/test-driver.sh @@ -1,5 +1,8 @@ #!/bin/bash +# some defines +export ADC_PATH="$HOME/glt-adc" + # are we in the right place cd ${0%/*} git rev-parse --show-toplevel || die should run t/test-driver.sh from a clone of gitolite From 3c62fe8ad4e0c53f2f4c3b3f3c6767532dd88cd6 Mon Sep 17 00:00:00 2001 From: Sitaram Chamarty Date: Tue, 11 Oct 2011 12:29:57 +0530 Subject: [PATCH 5/5] (test suite) added documentation for changes --- t/README.mkd | 112 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 66 insertions(+), 46 deletions(-) diff --git a/t/README.mkd b/t/README.mkd index f10688e..a452cf1 100644 --- a/t/README.mkd +++ b/t/README.mkd @@ -1,10 +1,14 @@ ## notes on the testing setup +**WARNING: PLEASE use a dedicated user for doing this**. Various files and +directories get overwritten and it's much simpler this way. + In this document: * terminology * notes and background - * quick instructions for running the test suite + * playing with gitolite + * testing gitolite * instructions for adding new tests @@ -18,67 +22,83 @@ In this document: ### notes and background - * all testing is done on one machine, using 2 userids +All testing is done on one **brand new** userid. We use ssh host alias tricks +to simulate multiple gitolite users within this, so `ssh gitolite info` gets +you different results than `ssh u1 info`. - * test driver exits on the *first* failed test; no fancy counting here. - (PW). +The test suite is mainly meant for testing **the core (access control) +functionality**. It doesn't test anything else, like say the install or +upgrade operations. Other big features NOT covered by the test suite are +mirroring, smart http, and password-based access. - * installs are done using "gl-easy-install". As such, this test suite is - mainly meant for testing **the core (access control) functionality**, and - will not help you test the install/upgrade parts themselves. Those are a - lot more difficult to test in an automated fashion, but luckily they also - change infrequently and can easily be tested manually when they do. - Errors in those are much more visible too. (PW). +Note that the test driver has evolved as new scripts were added; you will see +that older scripts are a little less sophisticated. - * the test driver has evolved as new scripts were added; you will see that - older scripts are a little less sophisticated. + - +### playing with gitolite -### quick instructions for running the test suite +(Please heed the warning at the top of this document and use a dedicated user +for this). - * create two brand new user IDs: tester and gitolite-test - * these are hard-coded, sorry. (PW) - * give them some passwords - * allow ssh into gitolite-test in `/etc/ssh/sshd_config`; preferably use - a line like `AllowUsers gitolite-test@127.0.0.1` so that no one can - ssh in from outside +Playing with gitolite is easy. - * prepare/push a bare clone of gitolite itself on /tmp so that the "tester" - userid can grab it painlessly + * Create a userid (doesn't matter what it's called; we'll pretend it's + "gl-test" in this document). - cd your-gitolite-working-repo - git clone --bare $PWD /tmp/gitolite # first time - git push -f --all /tmp/gitolite # subsequent times + * Make sure sshd allows incoming ssh to this userid at least from localhost. + (Out of scope for this document: sshd config, 'AllowUsers', etc...) - * "su" to "tester" and clone/fetch the gitolite source: + * Now log in as this user (doesn't matter how), and run the following + commands: - cd $HOME; git clone /tmp/gitolite # first time - cd gitolite; git fetch origin # subsequent times + cd $HOME # if not already in $HOME + git clone git://github.com/sitaramc/gitolite + gitolite/t/install - * checkout and "install" the branch you want to test (install from "tester" - userid to "gitolite-test" userid). Example, if you want to test "pu" - branch: + This installs the "testbed" in the userid you chose. No other user is + affected in any way. - git checkout -t origin/pu # if needed - git checkout -f pu; git reset --hard origin/pu # subsequent times - cd t # THIS IS IMPORTANT (patches welcome, or will be fixed eventually!) - ./install-gitolite +This is what you get when you do this: - * run all or some of the tests + * A gitolite user called "tester", tied to an ssh host alias called + "gitolite". This user has RW+ rights to the admin repo; running `ssh + gitolite info` should get you the expected results. - ./test-driver.sh - # or - ./test-driver.sh t51 + * Six gitolite users called "u1" through "u6", all done through ssh host + aliases. Running `ssh u1 info` etc. should show you only the "testing" + repo accessible to them. - * you can also run them through "prove", although to make it work easier - with prove, I ended up making the "subtest" numbers be the actual test - numbers, making it look like I have over 2000 tests, when in reality I - have about 600: + * A clone of the admin repo in `~/gitolite-admin`, created by `git clone + gitolite:gitolite-admin`. If you `cd ~/gitolite-admin`, you will see the + keys for the users mentioned above (tester, u1, ..., u6). - prove ./test-driver.sh - # or - prove ./test-driver.sh :: t51 + * The rest of a gitolite installation, such as the rc file in `~/.gitolite.rc` etc. + +Don't forget that the client and the server are all on the same user on the +same machine. + +And don't forget, too, that we are simulating 7 gitolite users using ssh keys! +(How? Maybe `~/.ssh/config` will give you a hint). You can now use those 7 +users in any way you please in the config file and test out different user's +access simply using a different URL. For example, `git clone u1:testing` and +`git clone u2:testing` may give you different results depending on what rights +you gave users "u1" and "u2" in your config. + + + +### testing gitolite + +First, do what the "playing with gitolite" section says. That is a +pre-requisite. + +Once that is done, run this command (still in `$HOME` of the gl-test userid): + + prove gitolite/t/test-driver.sh + +(note: to make it work easier with prove, I ended up making the "subtest" +numbers be the actual test numbers, making it look like I have over 2000 +tests, when in reality I have about 600)