fix: avoid package container metadata parsing
Build and test / Tests and license checks (push) Has been cancelled
Build and test / OpenWrt 24.10.7 · x86-64 (push) Has been cancelled
Build and test / OpenWrt 25.12.4 · x86-64 (push) Has been cancelled
Build and test / OpenWrt 24.10.7 · ipq40xx-generic (push) Has been cancelled
Build and test / OpenWrt 25.12.4 · ipq40xx-generic (push) Has been cancelled
Build and test / OpenWrt 24.10.7 · mediatek-filogic (push) Has been cancelled
Build and test / OpenWrt 25.12.4 · mediatek-filogic (push) Has been cancelled
Build and test / OpenWrt 24.10.7 · ath79-generic (push) Has been cancelled
Build and test / OpenWrt 25.12.4 · ath79-generic (push) Has been cancelled
Build and test / OpenWrt 24.10.7 · ramips-mt7621 (push) Has been cancelled
Build and test / OpenWrt 25.12.4 · ramips-mt7621 (push) Has been cancelled
Build and test / Publish agent GitHub release assets (push) Has been cancelled
Build and test / Publish signed package repository (push) Has been cancelled

This commit is contained in:
2026-07-31 15:12:25 +03:00
parent a103a0c832
commit 4f5ec5c041
+3 -5
View File
@@ -57,6 +57,7 @@ for artifact_dir in "$source_dir"/openwrt-*; do
package_format="apk" package_format="apk"
fi fi
package_file="$(find "$artifact_dir" -maxdepth 1 -type f \( -name 'rmm-agent-go-production_*.ipk' -o -name 'rmm-agent-go-production-*.apk' \) -print -quit)" package_file="$(find "$artifact_dir" -maxdepth 1 -type f \( -name 'rmm-agent-go-production_*.ipk' -o -name 'rmm-agent-go-production-*.apk' \) -print -quit)"
package_name="$(basename "$package_file")"
case "$package_file" in case "$package_file" in
*.ipk) *.ipk)
package_version="$(awk ' package_version="$(awk '
@@ -65,14 +66,11 @@ for artifact_dir in "$source_dir"/openwrt-*; do
/^$/ { package = "" } /^$/ { package = "" }
' "$artifact_dir/Packages" 2>/dev/null || true)" ' "$artifact_dir/Packages" 2>/dev/null || true)"
if [ -z "$package_version" ]; then if [ -z "$package_version" ]; then
control_path="$(ar p "$package_file" control.tar.gz 2>/dev/null | tar -tzf - 2>/dev/null | sed -n '/^\.\?\/\?control$/p' | head -n 1)" package_version="$(printf '%s\n' "$package_name" | sed -n 's/^rmm-agent-go-production_\([^_]*\)_.*/\1/p')"
if [ -n "$control_path" ]; then
package_version="$(ar p "$package_file" control.tar.gz 2>/dev/null | tar -xzO -f - "$control_path" 2>/dev/null | sed -n 's/^Version: //p' | head -n 1)"
fi
fi fi
;; ;;
*.apk) *.apk)
package_version="$(tar -xzO -f "$package_file" .PKGINFO | sed -n 's/^pkgver = //p' | head -n 1)" package_version="$(printf '%s\n' "$package_name" | sed -n 's/^rmm-agent-go-production[-_]\([^_]*\)_.*/\1/p')"
;; ;;
*) *)
echo "cannot determine rmm-agent-go-production package version in $artifact_dir" >&2 echo "cannot determine rmm-agent-go-production package version in $artifact_dir" >&2