update LavinMQ bundled sources #23
@@ -30,16 +30,30 @@ registry_key_url() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
download_registry_metadata() {
|
download_registry_metadata() {
|
||||||
local arch url key_dir
|
local arch url key_dir http_status
|
||||||
|
|
||||||
require_registry_config INSTANCE_URL "${instance_url}"
|
require_registry_config INSTANCE_URL "${instance_url}"
|
||||||
require_registry_config PACKAGE_OWNER "${owner}"
|
require_registry_config PACKAGE_OWNER "${owner}"
|
||||||
|
declare -gA registry_index_available=()
|
||||||
mkdir -p "${registry_cache}"
|
mkdir -p "${registry_cache}"
|
||||||
url="$(registry_url)"
|
url="$(registry_url)"
|
||||||
for arch in ${arches}; do
|
for arch in ${arches}; do
|
||||||
curl --fail --silent --show-error --location \
|
if http_status="$(curl --fail --silent --location \
|
||||||
--output "${registry_cache}/${arch}.APKINDEX.tar.gz" \
|
--output "${registry_cache}/${arch}.APKINDEX.tar.gz" \
|
||||||
"${url}/${arch}/APKINDEX.tar.gz"
|
--write-out '%{http_code}' \
|
||||||
|
"${url}/${arch}/APKINDEX.tar.gz")"; then
|
||||||
|
registry_index_available["${arch}"]=1
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
if [[ "${http_status}" == 404 ]]; then
|
||||||
|
registry_index_available["${arch}"]=0
|
||||||
|
printf 'Registry index is absent: %s/%s/APKINDEX.tar.gz; treating it as empty\n' \
|
||||||
|
"${url}" "${arch}" >&2
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
printf 'failed to download registry index (%s): %s/%s/APKINDEX.tar.gz\n' \
|
||||||
|
"${http_status:-curl error}" "${url}" "${arch}" >&2
|
||||||
|
return 1
|
||||||
done
|
done
|
||||||
key_dir="${registry_cache}/keys"
|
key_dir="${registry_cache}/keys"
|
||||||
mkdir -p "${key_dir}"
|
mkdir -p "${key_dir}"
|
||||||
@@ -59,6 +73,7 @@ load_registry_index() {
|
|||||||
declare -gA registry_latest_versions=()
|
declare -gA registry_latest_versions=()
|
||||||
|
|
||||||
for arch in ${arches}; do
|
for arch in ${arches}; do
|
||||||
|
[[ "${registry_index_available[${arch}]:-0}" == 1 ]] || continue
|
||||||
while IFS=$'\t' read -r package_name package_version; do
|
while IFS=$'\t' read -r package_name package_version; do
|
||||||
[[ -n "${package_name}" && -n "${package_version}" ]] || continue
|
[[ -n "${package_name}" && -n "${package_version}" ]] || continue
|
||||||
registry_key="${arch}|${package_name}"
|
registry_key="${arch}|${package_name}"
|
||||||
|
|||||||
Reference in New Issue
Block a user