#!/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