summaryrefslogtreecommitdiff
path: root/kvm
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2010-05-24 16:12:14 +0300
committerMarcelo Tosatti <mtosatti@redhat.com>2010-05-31 16:19:54 -0300
commit92b9dd0ea79bd5f7b1e2544b6b78eacb24d0da45 (patch)
tree7ae37568361cac9cf36c7740a11ca031b73f03dc /kvm
parentaa22e82eaef365c65898cfbf0e9398cff571902d (diff)
make-release: misc fixes
This fixes /tmp usage in make-release script for security. Also, create output directory if it does not exist. This also adds a 'tarball' optin to specify output file name. Finally, remote output file before gzip to avoid prompt 'do you want to overwrite'. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'kvm')
-rwxr-xr-xkvm/scripts/make-release13
1 files changed, 10 insertions, 3 deletions
diff --git a/kvm/scripts/make-release b/kvm/scripts/make-release
index 11d9c27ac..fdc402b4c 100755
--- a/kvm/scripts/make-release
+++ b/kvm/scripts/make-release
@@ -1,7 +1,7 @@
#!/bin/bash -e
usage() {
- echo "usage: $0 [--upload] [--formal] commit [name]"
+ echo "usage: $0 [--upload] [--formal] commit [name] [tarball]"
exit 1
}
@@ -12,7 +12,7 @@ formal=
releasedir=~/sf-release
[[ -z "$TMP" ]] && TMP="/tmp"
-tmpdir="$TMP/qemu-kvm-make-release.$$"
+tmpdir=`mktemp -d --tmpdir="$TMP" qemu-kvm-make-release.XXXXXXXXXX`
while [[ "$1" = -* ]]; do
opt="$1"
shift
@@ -40,9 +40,15 @@ if [[ -z "$name" ]]; then
name="$commit"
fi
-tarball="$releasedir/$name.tar"
+tarball="$3"
+if [[ -z "$tarball" ]]; then
+ tarball="$releasedir/$name.tar.gz"
+fi
+#strip trailing .gz if any
+tarball=${tarball/%.gz/}
cd "$(dirname "$0")"/../..
+mkdir -p "$(dirname "$tarball")"
git archive --prefix="$name/" --format=tar "$commit" > "$tarball"
mkdir -p "$tmpdir"
@@ -59,6 +65,7 @@ if [[ -n "$formal" ]]; then
rm -rf "$tmpdir"
fi
+rm -f "$tarball.gz"
gzip -9 "$tarball"
tarball="$tarball.gz"