Add LavinMQ Alpine package
Build Alpine Packages / build-and-publish (v3.24, 3.24) (pull_request) Successful in 29m11s
Build Alpine Packages / build-and-publish (v3.24, 3.24) (pull_request) Successful in 29m11s
This commit is contained in:
+74
@@ -0,0 +1,74 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
repo_root="${REPO_ROOT:-$(cd "$(dirname "${BASH_SOURCE[0]}")/../../../../.." && pwd)}"
|
||||
package_name="${PACKAGE_NAME:-lavinmq}"
|
||||
alpine_version="${ALPINE_VERSION:-3.24}"
|
||||
arch="${ALPINE_ARCH:-x86_64}"
|
||||
repository_url="${ALPINE_REPOSITORY_URL:-}"
|
||||
repository_key_url="${ALPINE_REPOSITORY_KEY_URL:-}"
|
||||
|
||||
case "${arch}" in
|
||||
x86_64)
|
||||
platform="${ALPINE_TEST_PLATFORM:-linux/amd64}"
|
||||
;;
|
||||
aarch64)
|
||||
platform="${ALPINE_TEST_PLATFORM:-linux/arm64}"
|
||||
;;
|
||||
*)
|
||||
printf 'unsupported Alpine architecture: %s\n' "${arch}" >&2
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ -z "${repository_url}" && "${SKIP_BUILD:-0}" != "1" ]]; then
|
||||
ALPINE_PACKAGE="${package_name}" "${repo_root}/scripts/apk/build.sh" build "${arch}"
|
||||
fi
|
||||
|
||||
if [[ -z "${repository_url}" && ! -d "${repo_root}/packages/local/${arch}" ]]; then
|
||||
printf 'missing local repository: packages/local/%s\n' "${arch}" >&2
|
||||
printf 'run: ALPINE_PACKAGE=%s mise run apk:build\n' "${package_name}" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
docker run --rm --platform "${platform}" \
|
||||
-e "ALPINE_ARCH=${arch}" \
|
||||
-e "PACKAGE_NAME=${package_name}" \
|
||||
-e "ALPINE_REPOSITORY_URL=${repository_url}" \
|
||||
-e "ALPINE_REPOSITORY_KEY_URL=${repository_key_url}" \
|
||||
-v "${repo_root}/packages/local:/repo:ro" \
|
||||
"alpine:${alpine_version}" \
|
||||
sh -lc '
|
||||
set -e
|
||||
|
||||
if [ -n "${ALPINE_REPOSITORY_URL}" ]; then
|
||||
if [ -n "${ALPINE_REPOSITORY_KEY_URL}" ]; then
|
||||
apk add --no-cache curl >/dev/null
|
||||
cd /etc/apk/keys
|
||||
curl -fsSLOJ "${ALPINE_REPOSITORY_KEY_URL}"
|
||||
fi
|
||||
printf "%s\n" "${ALPINE_REPOSITORY_URL}" >> /etc/apk/repositories
|
||||
else
|
||||
cp "/repo/${ALPINE_ARCH}"/*.rsa.pub /etc/apk/keys/
|
||||
printf "%s\n" /repo >> /etc/apk/repositories
|
||||
fi
|
||||
apk update
|
||||
apk add "${PACKAGE_NAME}" "${PACKAGE_NAME}-doc" "${PACKAGE_NAME}-openrc"
|
||||
|
||||
test -x /usr/bin/lavinmq
|
||||
test -x /usr/bin/lavinmqctl
|
||||
test -x /usr/bin/lavinmqperf
|
||||
test -f /etc/lavinmq/lavinmq.ini
|
||||
test -d /var/lib/lavinmq
|
||||
test -f /etc/conf.d/lavinmq
|
||||
test -f /etc/init.d/lavinmq
|
||||
test -f /usr/share/doc/lavinmq/README.md
|
||||
test -f /usr/share/doc/lavinmq/changelog
|
||||
|
||||
lavinmq -v
|
||||
lavinmqctl --version
|
||||
lavinmqperf --version
|
||||
|
||||
rc-update add lavinmq default
|
||||
test -L /etc/runlevels/default/lavinmq
|
||||
'
|
||||
Reference in New Issue
Block a user