build seaweedfs from vendored source
This commit is contained in:
@@ -13,23 +13,13 @@ cleanup() {
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
case "$(uname -m)" in
|
||||
x86_64)
|
||||
archive="linux_amd64.tar.gz"
|
||||
;;
|
||||
aarch64|arm64)
|
||||
archive="linux_arm64.tar.gz"
|
||||
;;
|
||||
*)
|
||||
printf 'unsupported host architecture for SeaweedFS generated sources: %s\n' "$(uname -m)" >&2
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
|
||||
curl -fsSL \
|
||||
-o "${tmpdir}/${archive}" \
|
||||
"https://github.com/seaweedfs/seaweedfs/releases/download/${pkgver}/${archive}"
|
||||
tar -xzf "${tmpdir}/${archive}" -C "${tmpdir}" weed
|
||||
-o "${tmpdir}/seaweedfs-${pkgver}-src.tar.gz" \
|
||||
"https://github.com/seaweedfs/seaweedfs/archive/refs/tags/${pkgver}.tar.gz"
|
||||
tar -xzf "${tmpdir}/seaweedfs-${pkgver}-src.tar.gz" -C "${tmpdir}"
|
||||
source_dir="${tmpdir}/seaweedfs-${pkgver}"
|
||||
tar -xzf "${package_dir}/seaweedfs-${pkgver}-go-vendor.tar.gz" -C "${source_dir}"
|
||||
go build -mod=vendor -buildvcs=false -trimpath -o "${tmpdir}/weed" "${source_dir}/weed"
|
||||
|
||||
for config in "${configs[@]}"; do
|
||||
"${tmpdir}/weed" scaffold -config "${config}" 2>/dev/null \
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
package_dir="${PACKAGE_DIR:-$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)}"
|
||||
pkgver="$(awk -F= '$1 == "pkgver" { print $2; exit }' "${package_dir}/APKBUILD")"
|
||||
tmpdir="$(mktemp -d)"
|
||||
|
||||
cleanup() {
|
||||
rm -rf "${tmpdir}"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
curl -fsSL \
|
||||
-o "${tmpdir}/seaweedfs-${pkgver}-src.tar.gz" \
|
||||
"https://github.com/seaweedfs/seaweedfs/archive/refs/tags/${pkgver}.tar.gz"
|
||||
tar -xzf "${tmpdir}/seaweedfs-${pkgver}-src.tar.gz" -C "${tmpdir}"
|
||||
source_dir="${tmpdir}/seaweedfs-${pkgver}"
|
||||
|
||||
(
|
||||
cd "${source_dir}"
|
||||
go mod vendor
|
||||
)
|
||||
(
|
||||
cd "${source_dir}/seaweed-worker"
|
||||
cargo vendor --locked vendor > cargo-vendor-config.toml
|
||||
)
|
||||
|
||||
tar --sort=name --mtime='@0' --owner=0 --group=0 --numeric-owner \
|
||||
-C "${source_dir}" -czf "${package_dir}/seaweedfs-${pkgver}-go-vendor.tar.gz" vendor
|
||||
tar --sort=name --mtime='@0' --owner=0 --group=0 --numeric-owner \
|
||||
-C "${source_dir}/seaweed-worker" \
|
||||
-czf "${package_dir}/seaweedfs-${pkgver}-cargo-vendor.tar.gz" \
|
||||
vendor cargo-vendor-config.toml
|
||||
Reference in New Issue
Block a user