Files
ark/server/scripts/build-all
2024-08-12 16:40:27 +02:00

46 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
# Get the parent directory path
PARENT_PATH=$(dirname $(
cd $(dirname $0)
pwd -P
))
# Set VERSION (you can modify this to get the version from a file or environment variable)
VERSION=$(git describe --tags --always --dirty 2>/dev/null || echo "unknown")
# Define OS and ARCH arrays
declare -a OS=("darwin" "linux")
declare -a ARCH=("amd64" "arm64")
# Change to the parent directory
pushd $PARENT_PATH
# Function to handle errors
handle_error() {
echo "Error occurred in build for $1 $2"
echo "Build command: VERSION=$VERSION GOOS=$1 GOARCH=$2 ./scripts/build"
echo "Exit code: $3"
echo "You may want to run this build manually to see more detailed error messages."
}
echo "Starting builds for version: $VERSION"
# Loop through OS and ARCH combinations
for os in "${OS[@]}"; do
for arch in "${ARCH[@]}"; do
echo "Building for $os $arch"
if VERSION=$VERSION GOOS=$os GOARCH=$arch ./scripts/build; then
echo "Build successful for $os $arch"
else
handle_error $os $arch $?
fi
echo "------------------------"
done
done
# Return to the original directory
popd
echo "All builds completed for version $VERSION."