37 lines
670 B
Bash
37 lines
670 B
Bash
#!/usr/bin/env bash
|
|
|
|
function check_tags() {
|
|
TAGS="$(git tag --points-at HEAD)"
|
|
if [ -n "$TAGS" ]; then
|
|
TAG=$(echo "$TAGS" | grep -E '^v[0-9]+.[0-9]+.[0-9]+$' | sort -V | tail -1)
|
|
else
|
|
echo "No release tag found"
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
function package() {
|
|
PACKAGE_DIR="${PACKAGE_DIR:-package}"
|
|
mkdir "$PACKAGE_DIR" > /dev/null 2>&1
|
|
|
|
pushd backend
|
|
cargo build --release
|
|
cp -v target/release/nuchat ../package/
|
|
popd
|
|
|
|
pushd ui
|
|
npm ci
|
|
npm run build
|
|
cp -rv .output ../package/ui
|
|
popd
|
|
|
|
|
|
OUT_FILE="${OUT_FILE:-package.tar.zst}"
|
|
if [ -f "$OUT_FILE" ]; then
|
|
rm "$OUT_FILE" > /dev/null 2>&1
|
|
fi
|
|
|
|
tar -cf - package/ | zstd -19 -T0 -o "${OUT_DIR}${OUT_FILE}"
|
|
}
|
|
|