All checks were successful
Build Alpine Packages / build-and-publish (push) Successful in 35m5s
40 lines
1.1 KiB
Bash
Executable File
40 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
repo_name="${ALPINE_REPO_NAME:-local}"
|
|
package_name="${ALPINE_PACKAGE:-greptimedb}"
|
|
package_root="${repo_root}/packages/${repo_name}"
|
|
assets_dir="${CI_ASSETS_DIR:-${repo_root}/packages/ci-assets}"
|
|
|
|
if [[ ! -d "${package_root}" ]]; then
|
|
printf 'missing local package repository: %s\n' "${package_root}" >&2
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "${assets_dir}"
|
|
|
|
shopt -s nullglob
|
|
apks=("${package_root}"/*/"${package_name}"-[0-9]*.apk)
|
|
shopt -u nullglob
|
|
|
|
if [[ "${#apks[@]}" -eq 0 ]]; then
|
|
printf 'no %s APK files found under %s\n' "${package_name}" "${package_root}" >&2
|
|
exit 1
|
|
fi
|
|
|
|
for apk in "${apks[@]}"; do
|
|
arch="$(basename "$(dirname "${apk}")")"
|
|
pkgver="$(
|
|
tar -xOf "${apk}" .PKGINFO 2>/dev/null \
|
|
| awk -F' = ' '$1 == "pkgver" { print $2; exit }'
|
|
)"
|
|
version="${pkgver%-r*}"
|
|
asset="${assets_dir}/greptime-linux-${arch}-musl-v${version}"
|
|
|
|
printf 'Exporting %s\n' "${asset}"
|
|
tar -xOf "${apk}" usr/bin/greptime > "${asset}"
|
|
chmod 0755 "${asset}"
|
|
sha256sum "${asset}" > "${asset}.sha256sum"
|
|
done
|