[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Add contrib/upload-release.sh



Hi,

Add a script contrib/upload-release.sh, that uploads dwz release tarballs to
sourceware.org, making them available at
https://sourceware.org/ftp/dwz/releases.

Tested using:
...
$ contrib/upload-release.sh 0.13
...
with ftpdir=/sourceware/ftp/pub/dwz/testing-1-2-3, resulting in:
...
$ ls -la
totaal 268
drwxr-sr-x. 2 vries dwz   4096 okt  2 13:51 .
drwsrwsr-x. 4 vries dwz   4096 okt  2 13:51 ..
-rw-r--r--. 1 vries dwz 143276 okt  2 13:51 dwz-0.13.tar.gz
-rw-r--r--. 1 vries dwz 114004 okt  2 13:51 dwz-0.13.tar.xz
-rw-r--r--. 1 vries dwz    100 okt  2 13:51 md5sum
-rw-r--r--. 1 vries dwz    292 okt  2 13:51 sha512sum
$ cat md5sum
00000000000000000000000000000000  dwz-0.13.tar.gz
00000000000000000000000000000000  dwz-0.13.tar.xz
$ cat sha512sum
00000000000000000000000000000000...00000000000000000000  dwz-0.13.tar.gz
00000000000000000000000000000000...00000000000000000000  dwz-0.13.tar.xz
...

OK for trunk?

Thanks,
- Tom

Add contrib/upload-release.sh

2019-10-02  Tom de Vries  <tdevries@suse.de>

	PR dwz/25052
	* contrib/upload-release.sh: New script.

---
 contrib/upload-release.sh | 64 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/contrib/upload-release.sh b/contrib/upload-release.sh
new file mode 100755
index 0000000..47c608e
--- /dev/null
+++ b/contrib/upload-release.sh
@@ -0,0 +1,64 @@
+#!/bin/sh -x
+
+set -e
+
+pwd=$(pwd -P)
+
+version="$1"
+
+tag=dwz-$version
+rootdir=dwz
+tarfile=dwz-$version.tar
+server=sourceware.org
+ftpdir=/sourceware/ftp/pub/dwz/releases
+checksums="md5sum sha512sum"
+
+repo="$pwd"
+
+dir=$(mktemp -d)
+
+cd $dir
+git clone \
+    $repo \
+    $rootdir
+
+cd $dir/$rootdir
+git ch $tag
+
+rm -Rf .git
+
+cd $dir
+tar cvf \
+    $tarfile \
+    $rootdir
+
+xz \
+    --best \
+    -k \
+    $tarfile
+
+gzip \
+    --best \
+    -k \
+    $tarfile
+
+files=$(echo $tarfile.*)
+
+[ "$files" != "" ]
+
+ssh $server \
+    "mkdir -p $ftpdir"
+
+scp \
+    $files \
+    "$server:$ftpdir"
+
+ssh $server \
+    "cd $ftpdir && chmod 644 $files"
+
+for checksum in $checksums; do
+    ssh $server \
+	"cd $ftpdir && touch $checksum && chmod 644 $checksum && ( $checksum $files >> $checksum )"
+done
+
+rm -Rf $dir