chore: use version file for package builds
This commit is contained in:
+22
-7
@@ -5,15 +5,17 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
DEB_ASSET_DIR="$SCRIPT_DIR/deb"
|
||||
PACKAGE_NAME="uce"
|
||||
REVISION="${UCE_DEB_REVISION:-1}"
|
||||
REVISION="${UCE_DEB_REVISION:-}"
|
||||
|
||||
usage() {
|
||||
cat <<'EOF'
|
||||
Usage:
|
||||
scripts/make_deb.sh VERSION
|
||||
scripts/make_deb.sh [VERSION]
|
||||
|
||||
When VERSION is omitted, scripts/make_deb.sh reads VERSION from version.txt.
|
||||
|
||||
Environment:
|
||||
UCE_DEB_REVISION Debian package revision suffix (default: 1)
|
||||
UCE_DEB_REVISION Optional Debian package revision suffix
|
||||
UCE_DEB_ARCH Override package architecture
|
||||
UCE_DEB_WEBROOT Public web root staged into the package (default: /var/www/html)
|
||||
UCE_DEB_BUNDLE_WASI_SDK Bundle pinned /opt/wasi-sdk into the package (default: 1)
|
||||
@@ -42,7 +44,7 @@ resolve_arch() {
|
||||
|
||||
validate_version() {
|
||||
local version="$1"
|
||||
if [[ ! "$version" =~ ^[0-9][A-Za-z0-9.+:~]*$ ]]; then
|
||||
if [[ ! "$version" =~ ^[0-9][A-Za-z0-9.+:~-]*$ ]]; then
|
||||
echo "Invalid Debian version string: $version" >&2
|
||||
exit 1
|
||||
fi
|
||||
@@ -143,12 +145,22 @@ write_md5sums() {
|
||||
)
|
||||
}
|
||||
|
||||
if [[ $# -ne 1 ]]; then
|
||||
if [[ $# -gt 1 ]]; then
|
||||
usage >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERSION="$1"
|
||||
if [[ $# -eq 1 ]]; then
|
||||
VERSION="$1"
|
||||
else
|
||||
if [[ ! -r "$REPO_ROOT/version.txt" ]]; then
|
||||
echo "Missing version.txt and no VERSION argument supplied" >&2
|
||||
exit 1
|
||||
fi
|
||||
# shellcheck disable=SC1091
|
||||
. "$REPO_ROOT/version.txt"
|
||||
VERSION="${VERSION:-}"
|
||||
fi
|
||||
validate_version "$VERSION"
|
||||
|
||||
require_command bash
|
||||
@@ -167,7 +179,10 @@ require_command cp
|
||||
require_command sort
|
||||
|
||||
ARCH="$(resolve_arch)"
|
||||
PACKAGE_VERSION="${VERSION}-${REVISION}"
|
||||
PACKAGE_VERSION="$VERSION"
|
||||
if [[ -n "$REVISION" ]]; then
|
||||
PACKAGE_VERSION="${PACKAGE_VERSION}-${REVISION}"
|
||||
fi
|
||||
PACKAGE_BASENAME="${PACKAGE_NAME}_${PACKAGE_VERSION}_${ARCH}"
|
||||
STAGE_DIR="$REPO_ROOT/pkg/$PACKAGE_BASENAME"
|
||||
DEBIAN_DIR="$STAGE_DIR/DEBIAN"
|
||||
|
||||
Reference in New Issue
Block a user