Fixup
This commit is contained in:
parent
a70263b446
commit
14c403ec22
24
build.sh
24
build.sh
|
@ -6,36 +6,38 @@ DEFAULT_ARCH="linux/amd64"
|
||||||
# Supported architectures (adjust as needed)
|
# Supported architectures (adjust as needed)
|
||||||
ARCHITECTURES=("linux/amd64" "linux/arm64" "linux/arm/v7")
|
ARCHITECTURES=("linux/amd64" "linux/arm64" "linux/arm/v7")
|
||||||
|
|
||||||
# Build function (Updated)
|
# Find the appropriate directory containing Go code (assumes 'src' or project root)
|
||||||
|
find_go_directory() {
|
||||||
|
if [ -d "src" ] && [ -f "src/go.mod" ]; then
|
||||||
|
echo "src" # Source code is within 'src'
|
||||||
|
else
|
||||||
|
echo "." # Source code is in the root directory
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build function
|
||||||
build_binary() {
|
build_binary() {
|
||||||
os=$1
|
os=$1
|
||||||
arch=$2
|
arch=$2
|
||||||
output_name="host_check"
|
output_name="host_check"
|
||||||
|
go_dir=$(find_go_directory)
|
||||||
|
|
||||||
if [[ "$os/$arch" != "$DEFAULT_ARCH" ]]; then
|
if [[ "$os/$arch" != "$DEFAULT_ARCH" ]]; then
|
||||||
output_name="${output_name}_${os}_${arch}"
|
output_name="${output_name}_${os}_${arch}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Create the dist folder if it doesn't exist
|
|
||||||
mkdir -p dist
|
mkdir -p dist
|
||||||
|
|
||||||
echo "Building for ${os}/${arch} -> dist/${output_name}"
|
echo "Building for ${os}/${arch} -> dist/${output_name}"
|
||||||
GOOS=${os} GOARCH=${arch} go build -o dist/${output_name} .
|
GOOS=${os} GOARCH=${arch} go build -o dist/${output_name} $go_dir
|
||||||
}
|
}
|
||||||
|
|
||||||
# Main Build Process (Updated)
|
# Main Build Process
|
||||||
for arch in "${ARCHITECTURES[@]}"; do
|
for arch in "${ARCHITECTURES[@]}"; do
|
||||||
IFS='/' read -r -a parts <<< "$arch"
|
IFS='/' read -r -a parts <<< "$arch"
|
||||||
os=${parts[0]}
|
os=${parts[0]}
|
||||||
arch=${parts[1]}
|
arch=${parts[1]}
|
||||||
|
|
||||||
# Ensure module files are present in the current directory
|
|
||||||
if [ ! -f "go.mod" ] || [ ! -f "go.sum" ]; then
|
|
||||||
echo "Error: 'go.mod' and/or 'go.sum' not found in the current directory."
|
|
||||||
echo "Make sure you're in the root of your Go module before running the build."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
build_binary $os $arch
|
build_binary $os $arch
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue