mirror of https://github.com/9001/r0c.git
126 lines
2.5 KiB
Bash
Executable File
126 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
echo
|
|
|
|
# osx support
|
|
# port install gnutar findutils gsed coreutils
|
|
gtar=$(command -v gtar || command -v gnutar) || true
|
|
[ ! -z "$gtar" ] && command -v gfind >/dev/null && {
|
|
tar() { $gtar "$@"; }
|
|
sed() { gsed "$@"; }
|
|
find() { gfind "$@"; }
|
|
sort() { gsort "$@"; }
|
|
command -v grealpath >/dev/null &&
|
|
realpath() { grealpath "$@"; }
|
|
}
|
|
|
|
which md5sum 2>/dev/null >/dev/null &&
|
|
md5sum=md5sum ||
|
|
md5sum="md5 -r"
|
|
|
|
ver="$1"
|
|
|
|
[ "x$ver" = x ] &&
|
|
{
|
|
echo "need argument 1: version"
|
|
echo
|
|
exit 1
|
|
}
|
|
|
|
[ -e r0c/__main__.py ] || cd ..
|
|
[ -e r0c/__main__.py ] ||
|
|
{
|
|
echo "run me from within the r0c folder"
|
|
echo
|
|
exit 1
|
|
}
|
|
|
|
out_dir="$(pwd | sed -r 's@/[^/]+$@@')"
|
|
zip_path="$out_dir/r0c-$ver.zip"
|
|
tgz_path="$out_dir/r0c-$ver.tar.gz"
|
|
|
|
[ -e "$zip_path" ] ||
|
|
[ -e "$tgz_path" ] &&
|
|
{
|
|
echo "found existing archives for this version"
|
|
echo " $zip_path"
|
|
echo " $tgz_path"
|
|
echo
|
|
echo "continue?"
|
|
read -u1
|
|
}
|
|
rm "$zip_path" 2>/dev/null || true
|
|
rm "$tgz_path" 2>/dev/null || true
|
|
|
|
tmp="$(mktemp -d)"
|
|
rls_dir="$tmp/r0c-$ver"
|
|
mkdir "$rls_dir"
|
|
|
|
echo ">>> export from git"
|
|
git archive master | tar -xC "$rls_dir"
|
|
|
|
cd "$rls_dir"
|
|
find -type d -exec chmod 755 '{}' \+
|
|
find -type f -exec chmod 644 '{}' \+
|
|
|
|
commaver="$(
|
|
printf '%s\n' "$ver" |
|
|
sed -r 's/\./, /g'
|
|
)"
|
|
|
|
grep -qE "^VERSION *= \(${commaver}\)$" r0c/__version__.py ||
|
|
{
|
|
echo "$tmp"
|
|
echo "bad version"
|
|
echo
|
|
echo " arg: $commaver"
|
|
echo "code: $(
|
|
cat r0c/__version__.py |
|
|
grep -E '^VERSION'
|
|
)"
|
|
echo
|
|
echo "continue?"
|
|
read -u1
|
|
}
|
|
|
|
rm -rf .vscode
|
|
rm \
|
|
.editorconfig \
|
|
.gitattributes \
|
|
.gitignore
|
|
|
|
mv LICENSE LICENSE.txt
|
|
|
|
chmod 755 \
|
|
start-r0c.sh \
|
|
clients/bash.sh \
|
|
scripts/py.sh \
|
|
scripts/format-wire-logs.sh \
|
|
test/run-stress.sh
|
|
|
|
# the regular cleanup memes
|
|
find -name '*.pyc' -delete
|
|
find -name __pycache__ -delete
|
|
find -type f \( -name .DS_Store -or -name ._.DS_Store \) -delete
|
|
find -type f -name ._\* | while IFS= read -r f; do cmp <(printf '\x00\x05\x16') <(head -c 3 -- "$f") && rm -f -- "$f"; done
|
|
|
|
find -type f -exec $md5sum '{}' \+ |
|
|
sed -r 's/(.{32})(.*)/\2\1/' | LC_COLLATE=c sort |
|
|
sed -r 's/(.*)(.{32})/\2\1/' |
|
|
sed -r 's/^(.{32}) \./\1 ./' > ../.sums.md5
|
|
mv ../.sums.md5 .
|
|
|
|
cd ..
|
|
echo ">>> tar"; tar -czf "$tgz_path" --owner=1000 --group=1000 --numeric-owner "r0c-$ver"
|
|
echo ">>> zip"; zip -qr "$zip_path" "r0c-$ver"
|
|
|
|
rm -rf "$tmp"
|
|
echo
|
|
echo "done:"
|
|
echo " $zip_path"
|
|
echo " $tgz_path"
|
|
echo
|
|
|
|
# function alr() { ls -alR r0c-$1 | sed -r "s/r0c-$1/r0c/" | sed -r 's/[A-Z][a-z]{2} [0-9 ]{2} [0-9]{2}:[0-9]{2}//' > $1; }; for x in master rls src ; do alr $x; done
|
|
|