You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
2.0 KiB
Bash
78 lines
2.0 KiB
Bash
4 years ago
|
if [ -z "$MIGTEST" ]; then
|
||
|
if [ -f /lib/ar71xx.sh ]; then
|
||
|
PLATFORM=ar71xx
|
||
|
. /lib/ar71xx.sh
|
||
|
elif [ -f /lib/ipq806x.sh ]; then
|
||
|
PLATFORM=ipq806x
|
||
|
. /lib/ipq806x.sh
|
||
|
fi
|
||
|
|
||
|
|
||
|
. /lib/functions.sh
|
||
|
BOARD=$(${PLATFORM}_board_name)
|
||
|
fi
|
||
|
|
||
|
if [ -z "$MIG_BASE" ];then
|
||
|
MIG_BASE="/etc/migration/"
|
||
|
fi
|
||
|
|
||
|
if [ -z "$MIG_DIRS" ]; then
|
||
|
MIG_DIRS=$(find "$MIG_BASE" -mindepth 1 -maxdepth 1 -type d -exec basename {} \;)
|
||
|
fi
|
||
|
|
||
|
if [ -z "$CURRENT_CONFIG_VERSION" ]; then
|
||
|
CURRENT_CONFIG_VERSION=$(grep CONFIG_VERSION /etc/delos-version |
|
||
|
awk -F'=' '{print $2}')
|
||
|
if [ "$CURRENT_CONFIG_VERSION" = "" ]; then
|
||
|
#assume 2.0.0 due empty CONFIG_VERSION
|
||
|
CURRENT_CONFIG_VERSION="2.0.0"
|
||
|
fi
|
||
|
fi
|
||
|
|
||
|
if [ -z "$UCI_TOOL" ];then
|
||
|
UCI_TOOL="$(command -v uci)"
|
||
|
fi
|
||
|
|
||
|
if [ -z "$LOG_TOOL" ]; then
|
||
|
LOG_TOOL="$(command -v logger)" || LOG_TOOL=":"
|
||
|
fi
|
||
|
|
||
|
migrationIsUpgrade() {
|
||
|
if [ -z "$MIGTEST" ]; then
|
||
|
# if downgrading the first migration step is not contained in /rom, not part of the firmware
|
||
|
if [ -d "/rom/etc/migration/$1" ]; then
|
||
|
$LOG_TOOL "Upgrade migration."
|
||
|
return 1
|
||
|
else
|
||
|
$LOG_TOOL "Downgrade migration."
|
||
|
return 0
|
||
|
fi
|
||
|
else
|
||
|
$LOG_TOOL "Emulate migrationIsUpgrade: TBD"
|
||
|
return 0
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
#used in 99_delos_migration
|
||
|
updateMigrationScripts() {
|
||
|
migrationIsUpgrade $1
|
||
|
if [ "$?" -eq "1" ]; then
|
||
|
$LOG_TOOL "Need migration of update scripts (/etc/migration)"
|
||
|
rm -rf "$MIG_BASE"*
|
||
|
cp -af /rom/etc/migration/* "$MIG_BASE"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
#used in 00_delos
|
||
|
updateUciDefaultsScript() {
|
||
|
rm -rf /etc/uci-defaults/99_delos_migration
|
||
|
cp -af /rom/etc/uci-defaults/99_delos_migration /etc/uci-defaults/99_delos_migration
|
||
|
}
|
||
|
|
||
|
forceCurrentMigrationScripts() {
|
||
|
if [ -z "$MIGTEST" ];then
|
||
|
cp -af /rom/etc/uci-defaults/99_delos_migration /etc/uci-defaults/99_delos_migration
|
||
|
cp -af /rom/lib/migration/* /lib/migration/
|
||
|
fi
|
||
|
}
|