#!/bin/bash

set -euo pipefail

JSON_FILE="/var/webuzo/apps.json"

if [ ! -f "$JSON_FILE" ]; then
    echo "JSON file $JSON_FILE not found."
    exit 1
fi

mapping_json='{
  "156_1": {"version": "8.1.31", "auto_upgrade": 2},
  "183_1": {"version": "8.2.27", "auto_upgrade": 2},
  "205_1": {"version": "8.3.15", "auto_upgrade": 2},
  "225_1": {"version": "8.4.16", "auto_upgrade": 2},
  "234_1": {"version": "8.5.3", "auto_upgrade": 2}
}'

jq --argjson mapping "$mapping_json" '
  reduce ($mapping | keys[]) as $key (
    .;
    if has($key) and (.[$key] != null) then
      .[$key].version = $mapping[$key].version
      | .[$key].auto_upgrade = $mapping[$key].auto_upgrade
    else
      .
    end
  )
' "$JSON_FILE" > "${JSON_FILE}.tmp" && mv "${JSON_FILE}.tmp" "$JSON_FILE"

