Add SeaweedFS Alpine package build
This commit is contained in:
66
scripts/apk/container-entrypoint.sh
Executable file
66
scripts/apk/container-entrypoint.sh
Executable file
@@ -0,0 +1,66 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
command_name="${1:-build}"
|
||||
package_dir="${APKBUILD_DIR:-/work/packaging/alpine/local/seaweedfs}"
|
||||
repo_name="${ALPINE_REPO_NAME:-local}"
|
||||
arch="${ALPINE_ARCH:-x86_64}"
|
||||
|
||||
export CARCH="${CARCH:-$arch}"
|
||||
export PACKAGER="${PACKAGER:-Local Builder <local@example.invalid>}"
|
||||
if [[ -n "${PACKAGER_PRIVKEY:-}" ]]; then
|
||||
export PACKAGER_PRIVKEY
|
||||
fi
|
||||
|
||||
git config --global --add safe.directory /work
|
||||
mkdir -p /home/builder/.abuild /home/builder/packages "${package_dir}"
|
||||
|
||||
if [[ -n "${PACKAGER_PRIVKEY:-}" && ! -f "${PACKAGER_PRIVKEY}" ]]; then
|
||||
abuild-keygen -a -n
|
||||
elif ! compgen -G "/home/builder/.abuild/*.rsa" > /dev/null; then
|
||||
abuild-keygen -a -n
|
||||
fi
|
||||
|
||||
if [[ -z "${PACKAGER_PRIVKEY:-}" && -f /home/builder/.abuild/abuild.conf ]]; then
|
||||
# shellcheck source=/dev/null
|
||||
. /home/builder/.abuild/abuild.conf
|
||||
fi
|
||||
if [[ -n "${PACKAGER_PRIVKEY:-}" ]]; then
|
||||
export PACKAGER_PRIVKEY
|
||||
fi
|
||||
|
||||
if [[ -n "${PACKAGER_PRIVKEY:-}" && -f "${PACKAGER_PRIVKEY}.pub" ]]; then
|
||||
doas cp "${PACKAGER_PRIVKEY}.pub" /etc/apk/keys/
|
||||
elif compgen -G "/home/builder/.abuild/*.rsa.pub" > /dev/null; then
|
||||
doas cp /home/builder/.abuild/*.rsa.pub /etc/apk/keys/
|
||||
fi
|
||||
|
||||
case "${command_name}" in
|
||||
build)
|
||||
cd "${package_dir}"
|
||||
abuild -r
|
||||
mkdir -p "/home/builder/packages/${repo_name}/${arch}"
|
||||
if [[ -n "${PACKAGER_PRIVKEY:-}" && -f "${PACKAGER_PRIVKEY}.pub" ]]; then
|
||||
cp "${PACKAGER_PRIVKEY}.pub" "/home/builder/packages/${repo_name}/${arch}/"
|
||||
elif compgen -G "/home/builder/.abuild/*.rsa.pub" > /dev/null; then
|
||||
cp /home/builder/.abuild/*.rsa.pub "/home/builder/packages/${repo_name}/${arch}/"
|
||||
fi
|
||||
;;
|
||||
checksum)
|
||||
cd "${package_dir}"
|
||||
abuild checksum
|
||||
;;
|
||||
lint)
|
||||
cd "${package_dir}"
|
||||
apkbuild-lint APKBUILD
|
||||
;;
|
||||
shell)
|
||||
cd "${package_dir}"
|
||||
exec bash
|
||||
;;
|
||||
*)
|
||||
printf 'unknown command: %s\n' "${command_name}" >&2
|
||||
printf 'usage: %s [build|checksum|lint|shell]\n' "$0" >&2
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user