From 8ac1e2b81e5c1acd0ad14f2af90df8b142133783 Mon Sep 17 00:00:00 2001 From: realaravinth Date: Sat, 13 Aug 2022 19:41:45 +0530 Subject: [PATCH] feat: package and sign dist assets --- scripts/publish.sh | 58 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100755 scripts/publish.sh diff --git a/scripts/publish.sh b/scripts/publish.sh new file mode 100755 index 00000000..72f001fa --- /dev/null +++ b/scripts/publish.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +# publish.sh: grab bin from docker container, pack, sign and upload +# $1: mCaptcha version +# $2: Docker img tag +set -xEeuo pipefail + +TMP_DIR=$(mktemp -d) +FILENAME="mCaptcha-$1-linux-amd64" +TARBALL="mCaptcha-$1.tar.gz" +TARGET_DIR="$TMP_DIR/$FILENAME" +DOCKER_IMG="mcaptcha/mcaptcha:$2" + +mkdir $TARGET_DIR + +get_bin(){ + echo "[*] Grabbing binary" + container_id=$(docker create $DOCKER_IMG) + #docker cp $container_id:/usr/local/bin/mcaptcha $TARGET_DIR/ + docker cp $container_id:/usr/local/bin/mcaptcha $TARGET_DIR/ + docker rm -v $container_id +} + +copy() { + echo "[*] Copying dist assets" + cp README.md $TARGET_DIR + cp LICENSE.md $TARGET_DIR + cp CHANGELOG.md $TARGET_DIR + cp docker-compose.yml $TARGET_DIR + + mkdir $TARGET_DIR/docs + cp docs/DEPLOYMENT.md $TARGET_DIR/docs + cp docs/CONFIGURATION.md $TARGET_DIR/docs + + get_bin +} + +pack() { + echo "[*] Creating dist tarball" + tar -cvzf $TARBALL $TARGET_DIR +} + +checksum() { + echo "[*] Generating dist tarball checksum" + sha256sum $TARBALL > $TARBALL.sha256 +} + +sign() { + echo "[*] Signing dist tarball checksum" + gpg --output $TARBALL.asc --sign --detach --armor $TARBALL +} + +copy +pushd $TMP_DIR +pack +checksum +sign +popd