{"thread":{"id":"468","subject":"[PATCH] extend cg-export to support release tarball creation","startedAt":"2005-05-03T22:57:11Z","lastAt":"2005-05-03T22:57:11Z","messageCount":1,"participants":["Mark Allen"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"2541","messageId":"20050503225712.74818.qmail@web41211.mail.yahoo.com","threadId":"468","inReplyTo":null,"subject":"[PATCH] extend cg-export to support release tarball creation","fromName":"Mark Allen","fromEmail":"mrallen1@yahoo.com","sentAt":"2005-05-03T22:57:11Z","receivedAt":"2005-05-03T22:57:11Z","isPatch":true,"sender":{"key":"mrallen1@yahoo.com","avatar":null},"body":"Here's a patch for cg-export which supports a \"-r RELEASE\" option. It will export the\nspecific ID or HEAD and then create a tar gz and a tar bz2 in your previous working\ndirectory using RELEASE as the tarball name and the directory inside the tarball.\n\nWithin cogito itself,\n\ncg-export -r $(cat VERSION) /tmp/foo\n\nseems to work quite nicely to make release tarballs.\n\nUnlike my previous attempt, this one does not make evil tarballs. :-)  One could insert a\nscript to update the .spec file before the tarfiles get created if desired.\n\nCheers,\n\n--Mark\n\nSigned-off-by: Mark Allen <mrallen1@yahoo.com>\n\nIndex: cg-export\n===================================================================\n--- aa6233be6d1b8bf42797c409a7c23b50593afc99/cg-export  (mode:100755\nsha1:a4497314ab33f6a6387bc278e84f88d4442070ce)\n+++ uncommitted/cg-export  (mode:100755 sha1:b0dfdf6049e7a074ef8c8c3f6a43e04a30e5cb89)\n@@ -8,10 +8,17 @@\n\n . cg-Xlib\n\n-destdir=$1\n-id=$(tree-id $2)\n\n-([ \"$destdir\" ] && [ \"$id\" ]) || die \"usage: cg-export DESTDIR [TREE_ID]\"\n+if [ \"$1\" = \"-r\" ]; then\n+       release=$2\n+       destdir=\"$3/$2\"\n+       id=$(tree-id $4)\n+else\n+       destdir=$1\n+       id=$(tree-id $2)\n+fi\n+\n+([ \"$destdir\" ] && [ \"$id\" ]) || die \"usage: cg-export [-r RELEASE] DESTDIR [TREE_ID]\"\n\n [ -e \"$destdir\" ] && die \"$destdir already exists.\"\n\n@@ -20,3 +27,14 @@\n git-read-tree $id\n git-checkout-cache \"--prefix=$destdir/\" -a\n rm $GIT_INDEX_FILE\n+\n+if [ \"$1\" = \"-r\" ]; then\n+       origdir=$PWD\n+       cd $destdir\n+       cd ..\n+       tar czf $origdir/$release.tar.gz $release\n+       tar cjf $origdir/$release.tar.bz2 $release\n+       cd $origdir\n+else\n+       exit 0\n+fi\n\n\n"}]}