1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
#!/bin/sh
exec 2>&1
set -ex
tmpdir="$AUTOPKGTEST_TMP"
if [ -x "$tmpdir" ]; then
tmpdir=$(mktemp -d)
remove_tmpdir() {
rm -rf "$tmpdir"
}
trap remove_tmpdir INT TERM EXIT
fi
cd $tmpdir
mkdir -p repos/test.git
git init --bare repos/test.git
cat > config.ru <<EOF
require 'grack'
config = {
:project_root => File.join(File.dirname(__FILE__), 'repos'),
:upload_pack => true,
:receive_pack => true,
}
run Grack::Server.new(config)
EOF
rackup -p 6666 &
server=$!
stop_server() {
kill $server
}
trap stop_server INT TERM EXIT
sleep 2 # wait for the server to get up
# clone
git clone http://localhost:6666/test.git
cd test
# config
git config push.default simple
git config user.email "user@example.com"
git config user.name "Happy User"
# add files and push
touch README
git add README
git commit -m 'Initial commit'
git push
|