feat: Add internal firmware versioning (ph{N} suffix)
OpenWrt base version doesn't change between our config/script updates. PARAHUB_BUILD counter creates version like 25.12.0-rc4-ph1 for tracking. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -11,6 +11,8 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
|
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
|
||||||
|
|
||||||
OPENWRT_VERSION="${OPENWRT_VERSION:-25.12.0-rc4}"
|
OPENWRT_VERSION="${OPENWRT_VERSION:-25.12.0-rc4}"
|
||||||
|
PARAHUB_BUILD="1"
|
||||||
|
FIRMWARE_VERSION="${OPENWRT_VERSION}-ph${PARAHUB_BUILD}"
|
||||||
|
|
||||||
# ============================================================================
|
# ============================================================================
|
||||||
# Device Database (device → target/subtarget + Image Builder profile)
|
# Device Database (device → target/subtarget + Image Builder profile)
|
||||||
@@ -174,7 +176,7 @@ build_firmware() {
|
|||||||
cp -a "${PROJECT_DIR}/files/"* "$tmpfiles/"
|
cp -a "${PROJECT_DIR}/files/"* "$tmpfiles/"
|
||||||
mkdir -p "$tmpfiles/etc/parahub"
|
mkdir -p "$tmpfiles/etc/parahub"
|
||||||
echo "$FIRMWARE_ROLE" > "$tmpfiles/etc/parahub/role"
|
echo "$FIRMWARE_ROLE" > "$tmpfiles/etc/parahub/role"
|
||||||
echo "$OPENWRT_VERSION" > "$tmpfiles/etc/parahub/version"
|
echo "$FIRMWARE_VERSION" > "$tmpfiles/etc/parahub/version"
|
||||||
echo "$PROFILE" > "$tmpfiles/etc/parahub/profile"
|
echo "$PROFILE" > "$tmpfiles/etc/parahub/profile"
|
||||||
echo "$PORT_MAP" > "$tmpfiles/etc/parahub/port_map"
|
echo "$PORT_MAP" > "$tmpfiles/etc/parahub/port_map"
|
||||||
|
|
||||||
@@ -226,7 +228,7 @@ update_manifest() {
|
|||||||
import json, sys
|
import json, sys
|
||||||
with open('$manifest') as f:
|
with open('$manifest') as f:
|
||||||
m = json.load(f)
|
m = json.load(f)
|
||||||
m['version'] = '$OPENWRT_VERSION'
|
m['version'] = '$FIRMWARE_VERSION'
|
||||||
m.setdefault('devices', {})['$PROFILE'] = {
|
m.setdefault('devices', {})['$PROFILE'] = {
|
||||||
'sysupgrade': '$filename',
|
'sysupgrade': '$filename',
|
||||||
'sha256': '$sha256'
|
'sha256': '$sha256'
|
||||||
@@ -238,7 +240,7 @@ json.dump(m, sys.stdout, indent=2)
|
|||||||
python3 -c "
|
python3 -c "
|
||||||
import json, sys
|
import json, sys
|
||||||
m = {
|
m = {
|
||||||
'version': '$OPENWRT_VERSION',
|
'version': '$FIRMWARE_VERSION',
|
||||||
'devices': {
|
'devices': {
|
||||||
'$PROFILE': {
|
'$PROFILE': {
|
||||||
'sysupgrade': '$filename',
|
'sysupgrade': '$filename',
|
||||||
|
|||||||
Reference in New Issue
Block a user