Browse Source

Move all upgrade scripts to a common directory

Moving the scripts to a common directory not only vastly simplifies the
zzz-gluon-upgrade script, but also allows to define an ordering of such
scripts across packages.
Matthias Schiffer 9 years ago
parent
commit
9b172bbaf4
39 changed files with 2 additions and 66 deletions
  1. 0 0
      package/gluon-alfred/files/lib/gluon/upgrade/500-enable-alfred
  2. 0 0
      package/gluon-authorized-keys/files/lib/gluon/upgrade/100-authorized-keys
  3. 0 0
      package/gluon-autoupdater/files/lib/gluon/upgrade/500-autoupdater
  4. 2 64
      package/gluon-core/files/etc/uci-defaults/zzz-gluon-upgrade
  5. 0 0
      package/gluon-core/files/lib/gluon/upgrade/001-upgrade
  6. 0 0
      package/gluon-core/files/lib/gluon/upgrade/010-primary-mac
  7. 0 0
      package/gluon-core/files/lib/gluon/upgrade/020-interfaces
  8. 0 0
      package/gluon-core/files/lib/gluon/upgrade/030-system
  9. 0 0
      package/gluon-core/files/lib/gluon/upgrade/100-dnsmasq
  10. 0 0
      package/gluon-core/files/lib/gluon/upgrade/110-network
  11. 0 0
      package/gluon-core/files/lib/gluon/upgrade/120-ntp-servers
  12. 0 0
      package/gluon-core/files/lib/gluon/upgrade/130-reboot-on-oom
  13. 0 0
      package/gluon-core/files/lib/gluon/upgrade/140-firewall-rules
  14. 0 0
      package/gluon-core/files/lib/gluon/upgrade/200-wireless
  15. 0 0
      package/gluon-core/files/lib/gluon/upgrade/999-version
  16. 0 2
      package/gluon-core/files/lib/upgrade/keep.d/gluon
  17. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/000-legacy
  18. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/019-legacy-interfaces
  19. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/210-legacy-wireless
  20. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/290-legacy-setup-mode
  21. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/290-legacy-simple-tc
  22. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/390-legacy-mesh-vpn-fastd
  23. 0 0
      package/gluon-legacy/files/lib/gluon/upgrade/990-legacy-late
  24. 0 0
      package/gluon-lock-password/files/lib/gluon/upgrade/100-lock-password
  25. 0 0
      package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/300-gluon-mesh-batman-adv-core-wan
  26. 0 0
      package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/310-gluon-mesh-batman-adv-core-mesh
  27. 0 0
      package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/320-gluon-mesh-batman-adv-core-wireless
  28. 0 0
      package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/330-gluon-mesh-batman-adv-core-mesh-on-wan
  29. 0 0
      package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/400-mesh-vpn-fastd
  30. 0 0
      package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/410-mesh-vpn-fastd-generate-secret
  31. 0 0
      package/gluon-next-node/files/lib/gluon/upgrade/400-next-node
  32. 0 0
      package/gluon-node-info/files/lib/gluon/upgrade/500-node-info-system
  33. 0 0
      package/gluon-node-info/files/lib/gluon/upgrade/510-node-info-role
  34. 0 0
      package/gluon-radvd/files/lib/gluon/upgrade/500-radvd-remove-user
  35. 0 0
      package/gluon-setup-mode/files/lib/gluon/upgrade/300-setup-mode
  36. 0 0
      package/gluon-setup-mode/files/lib/gluon/upgrade/310-setup-mode-migrate
  37. 0 0
      package/gluon-setup-mode/files/lib/gluon/upgrade/320-setup-ifname
  38. 0 0
      package/gluon-simple-tc/files/lib/gluon/upgrade/300-simple-tc-site-defaults
  39. 0 0
      package/gluon-status-page/files/lib/gluon/upgrade/500-status-page

+ 0 - 0
package/gluon-alfred/files/lib/gluon/upgrade/alfred/invariant/010-enable-alfred → package/gluon-alfred/files/lib/gluon/upgrade/500-enable-alfred


+ 0 - 0
package/gluon-authorized-keys/files/lib/gluon/upgrade/authorized-keys/invariant/010-authorized-keys → package/gluon-authorized-keys/files/lib/gluon/upgrade/100-authorized-keys


+ 0 - 0
package/gluon-autoupdater/files/lib/gluon/upgrade/autoupdater/invariant/010-autoupdater → package/gluon-autoupdater/files/lib/gluon/upgrade/500-autoupdater


+ 2 - 64
package/gluon-core/files/etc/uci-defaults/zzz-gluon-upgrade

@@ -1,67 +1,5 @@
 #!/bin/sh
 
-
-UPGRADE_DIR=/lib/gluon/upgrade
-VERSION_DIR=/lib/gluon/version
-
-
-if [ -x /lib/gluon/legacy/legacy-upgrade ] && /lib/gluon/legacy/legacy-upgrade; then
-	HAS_LEGACY=1
-else
-	HAS_LEGACY=
-fi
-
-mkdir -p "$VERSION_DIR"
-
-
-version_of() {
-	opkg status "gluon-$1" | awk '/^Version: / { print $2 }'
-}
-
-oldversion_of() {
-	cat "$VERSION_DIR"/"$1" 2>/dev/null
-}
-
-do_dir() {
-	[ -d "$1" ] || return
-
-	local s
-	for s in "$1"/*; do "$s"; done
-}
-
-do_component() {
-	local component="$1"
-	local version="$(version_of "$component")"
-	[ "$version" ] || continue
-
-	(
-		cd "$component"
-
-		local oldversion="$(oldversion_of "$component")"
-		if [ -z "$oldversion" ]; then
-			if [ "$HAS_LEGACY" ]; then
-				do_dir legacy
-			else
-				do_dir initial
-			fi
-		fi
-
-		do_dir invariant
-
-		echo "$version" > "$VERSION_DIR"/"$component"
-	)
-}
-
-
-cd "$UPGRADE_DIR"
-
-do_component core
-
-for component in *; do
-	[ "$component" != 'core' ] || continue
-	do_component "$component"
+for script in /lib/gluon/upgrade/*; do
+	"$script"
 done
-
-if [ "$HAS_LEGACY" ]; then
-	/lib/gluon/legacy/legacy-upgrade-late
-fi

+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/001-upgrade → package/gluon-core/files/lib/gluon/upgrade/001-upgrade


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/010-primary-mac → package/gluon-core/files/lib/gluon/upgrade/010-primary-mac


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/020-interfaces → package/gluon-core/files/lib/gluon/upgrade/020-interfaces


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/030-system → package/gluon-core/files/lib/gluon/upgrade/030-system


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/100-dnsmasq → package/gluon-core/files/lib/gluon/upgrade/100-dnsmasq


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/110-network → package/gluon-core/files/lib/gluon/upgrade/110-network


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/120-ntp-servers → package/gluon-core/files/lib/gluon/upgrade/120-ntp-servers


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/130-reboot-on-oom → package/gluon-core/files/lib/gluon/upgrade/130-reboot-on-oom


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/140-firewall-rules → package/gluon-core/files/lib/gluon/upgrade/140-firewall-rules


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/200-wireless → package/gluon-core/files/lib/gluon/upgrade/200-wireless


+ 0 - 0
package/gluon-core/files/lib/gluon/upgrade/core/invariant/999-version → package/gluon-core/files/lib/gluon/upgrade/999-version


+ 0 - 2
package/gluon-core/files/lib/upgrade/keep.d/gluon

@@ -1,3 +1 @@
-/lib/gluon/version/
-
 /lib/gluon/core/sysconfig/

+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/core/invariant/000-legacy → package/gluon-legacy/files/lib/gluon/upgrade/000-legacy


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/core/invariant/019-legacy-interfaces → package/gluon-legacy/files/lib/gluon/upgrade/019-legacy-interfaces


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/core/invariant/210-legacy-wireless → package/gluon-legacy/files/lib/gluon/upgrade/210-legacy-wireless


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/setup-mode/invariant/009-legacy-setup-mode → package/gluon-legacy/files/lib/gluon/upgrade/290-legacy-setup-mode


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/simple-tc/invariant/009-legacy-simple-tc → package/gluon-legacy/files/lib/gluon/upgrade/290-legacy-simple-tc


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/mesh-vpn-fastd/invariant/009-legacy-mesh-vpn-fastd → package/gluon-legacy/files/lib/gluon/upgrade/390-legacy-mesh-vpn-fastd


+ 0 - 0
package/gluon-legacy/files/lib/gluon/upgrade/core/invariant/990-legacy-late → package/gluon-legacy/files/lib/gluon/upgrade/990-legacy-late


+ 0 - 0
package/gluon-lock-password/files/lib/gluon/upgrade/lock-password/invariant/010-lock-password → package/gluon-lock-password/files/lib/gluon/upgrade/100-lock-password


+ 0 - 0
package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/mesh-batman-adv-core/invariant/010-wan → package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/300-gluon-mesh-batman-adv-core-wan


+ 0 - 0
package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/mesh-batman-adv-core/invariant/011-mesh → package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/310-gluon-mesh-batman-adv-core-mesh


+ 0 - 0
package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/mesh-batman-adv-core/invariant/020-wireless → package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/320-gluon-mesh-batman-adv-core-wireless


+ 0 - 0
package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/mesh-batman-adv-core/invariant/030-mesh-on-wan → package/gluon-mesh-batman-adv-core/files/lib/gluon/upgrade/330-gluon-mesh-batman-adv-core-mesh-on-wan


+ 0 - 0
package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/mesh-vpn-fastd/invariant/010-mesh-vpn-fastd → package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/400-mesh-vpn-fastd


+ 0 - 0
package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/mesh-vpn-fastd/invariant/020-secret-generate → package/gluon-mesh-vpn-fastd/files/lib/gluon/upgrade/410-mesh-vpn-fastd-generate-secret


+ 0 - 0
package/gluon-next-node/files/lib/gluon/upgrade/next-node/invariant/010-next-node → package/gluon-next-node/files/lib/gluon/upgrade/400-next-node


+ 0 - 0
package/gluon-node-info/files/lib/gluon/upgrade/node-info/invariant/001-node-system → package/gluon-node-info/files/lib/gluon/upgrade/500-node-info-system


+ 0 - 0
package/gluon-node-info/files/lib/gluon/upgrade/node-info/invariant/010-node-role → package/gluon-node-info/files/lib/gluon/upgrade/510-node-info-role


+ 0 - 0
package/gluon-radvd/files/lib/gluon/upgrade/radvd/invariant/10-radvd-user → package/gluon-radvd/files/lib/gluon/upgrade/500-radvd-remove-user


+ 0 - 0
package/gluon-setup-mode/files/lib/gluon/upgrade/setup-mode/invariant/005-setup-mode → package/gluon-setup-mode/files/lib/gluon/upgrade/300-setup-mode


+ 0 - 0
package/gluon-setup-mode/files/lib/gluon/upgrade/setup-mode/invariant/010-setup-mode-migrate → package/gluon-setup-mode/files/lib/gluon/upgrade/310-setup-mode-migrate


+ 0 - 0
package/gluon-setup-mode/files/lib/gluon/upgrade/setup-mode/invariant/011-setup-ifname → package/gluon-setup-mode/files/lib/gluon/upgrade/320-setup-ifname


+ 0 - 0
package/gluon-simple-tc/files/lib/gluon/upgrade/simple-tc/invariant/010-site-defaults → package/gluon-simple-tc/files/lib/gluon/upgrade/300-simple-tc-site-defaults


+ 0 - 0
package/gluon-status-page/files/lib/gluon/upgrade/status-page/invariant/010-status-page → package/gluon-status-page/files/lib/gluon/upgrade/500-status-page