|
@@ -60,8 +60,6 @@ BUILD_PATH=$(dirname "${BASH_SOURCE[0]}")/../../..
|
|
SOURCE_ROOT=${BUILD_PATH}/sysroot
|
|
SOURCE_ROOT=${BUILD_PATH}/sysroot
|
|
|
|
|
|
APP_NAME="casaos"
|
|
APP_NAME="casaos"
|
|
-APP_NAME_FORMAL="CasaOS"
|
|
|
|
-#APP_NAME_FORMAL="casaos-alpha"
|
|
|
|
|
|
|
|
# check if migration is needed
|
|
# check if migration is needed
|
|
SOURCE_BIN_PATH=${SOURCE_ROOT}/usr/bin
|
|
SOURCE_BIN_PATH=${SOURCE_ROOT}/usr/bin
|
|
@@ -85,6 +83,25 @@ if [ "${NEED_MIGRATION}" = "false" ]; then
|
|
exit 0
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
+ARCH="unknown"
|
|
|
|
+
|
|
|
|
+case $(uname -m) in
|
|
|
|
+ x86_64)
|
|
|
|
+ ARCH="amd64"
|
|
|
|
+ ;;
|
|
|
|
+ aarch64)
|
|
|
|
+ ARCH="arm64"
|
|
|
|
+ ;;
|
|
|
|
+ armv7l)
|
|
|
|
+ ARCH="arm-7"
|
|
|
|
+ ;;
|
|
|
|
+ *)
|
|
|
|
+ __error "Unsupported architecture"
|
|
|
|
+ ;;
|
|
|
|
+esac
|
|
|
|
+
|
|
|
|
+__info "ARCH: ${ARCH}"
|
|
|
|
+
|
|
MIGRATION_SERVICE_DIR=${1}
|
|
MIGRATION_SERVICE_DIR=${1}
|
|
|
|
|
|
if [ -z "${MIGRATION_SERVICE_DIR}" ]; then
|
|
if [ -z "${MIGRATION_SERVICE_DIR}" ]; then
|
|
@@ -95,10 +112,10 @@ MIGRATION_PATH=()
|
|
|
|
|
|
CURRENT_VERSION_FOUND="false"
|
|
CURRENT_VERSION_FOUND="false"
|
|
|
|
|
|
-# a VERSION_PAIR looks like "v0.3.5 v0.3.6-alpha2"
|
|
|
|
|
|
+# a VERSION_PAIR looks like "v0.3.5 <url>"
|
|
#
|
|
#
|
|
# - "v0.3.5" is the current version installed on this host
|
|
# - "v0.3.5" is the current version installed on this host
|
|
-# - "v0.3.6-alpha2" is the version of the migration tool from GitHub
|
|
|
|
|
|
+# - "<url>" is the url of the migration tool
|
|
while read -r VERSION_PAIR; do
|
|
while read -r VERSION_PAIR; do
|
|
if [ -z "${VERSION_PAIR}" ]; then
|
|
if [ -z "${VERSION_PAIR}" ]; then
|
|
continue
|
|
continue
|
|
@@ -107,15 +124,15 @@ while read -r VERSION_PAIR; do
|
|
# obtain "v0.3.5" from "v0.3.5 v0.3.6-alpha2"
|
|
# obtain "v0.3.5" from "v0.3.5 v0.3.6-alpha2"
|
|
VER1=$(echo "${VERSION_PAIR}" | cut -d' ' -f1)
|
|
VER1=$(echo "${VERSION_PAIR}" | cut -d' ' -f1)
|
|
|
|
|
|
- # obtain "v0.3.6-alpha2" from "v0.3.5 v0.3.6-alpha2"
|
|
|
|
- VER2=$(echo "${VERSION_PAIR}" | cut -d' ' -f2)
|
|
|
|
|
|
+ # obtain "<url>" from "v0.3.5 <url>"
|
|
|
|
+ URL=$(eval echo "${VERSION_PAIR}" | cut -d' ' -f2)
|
|
|
|
|
|
if [ "${CURRENT_VERSION}" = "${VER1// /}" ] || [ "${CURRENT_VERSION}" = "LEGACY_WITHOUT_VERSION" ]; then
|
|
if [ "${CURRENT_VERSION}" = "${VER1// /}" ] || [ "${CURRENT_VERSION}" = "LEGACY_WITHOUT_VERSION" ]; then
|
|
CURRENT_VERSION_FOUND="true"
|
|
CURRENT_VERSION_FOUND="true"
|
|
fi
|
|
fi
|
|
|
|
|
|
if [ "${CURRENT_VERSION_FOUND}" = "true" ]; then
|
|
if [ "${CURRENT_VERSION_FOUND}" = "true" ]; then
|
|
- MIGRATION_PATH+=("${VER2// /}")
|
|
|
|
|
|
+ MIGRATION_PATH+=("${URL// /}")
|
|
fi
|
|
fi
|
|
done < "${MIGRATION_LIST_FILE}"
|
|
done < "${MIGRATION_LIST_FILE}"
|
|
|
|
|
|
@@ -124,39 +141,18 @@ if [ ${#MIGRATION_PATH[@]} -eq 0 ]; then
|
|
exit 0
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
|
|
-ARCH="unknown"
|
|
|
|
-
|
|
|
|
-case $(uname -m) in
|
|
|
|
- x86_64)
|
|
|
|
- ARCH="amd64"
|
|
|
|
- ;;
|
|
|
|
- aarch64)
|
|
|
|
- ARCH="arm64"
|
|
|
|
- ;;
|
|
|
|
- armv7l)
|
|
|
|
- ARCH="arm-7"
|
|
|
|
- ;;
|
|
|
|
- *)
|
|
|
|
- __error "Unsupported architecture"
|
|
|
|
- ;;
|
|
|
|
-esac
|
|
|
|
-
|
|
|
|
pushd "${MIGRATION_SERVICE_DIR}"
|
|
pushd "${MIGRATION_SERVICE_DIR}"
|
|
|
|
|
|
-{ for VER2 in "${MIGRATION_PATH[@]}"; do
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- MIGRATION_TOOL_FILE=linux-"${ARCH}"-"${APP_NAME}"-migration-tool-"${VER2}".tar.gz
|
|
|
|
|
|
+{ for URL in "${MIGRATION_PATH[@]}"; do
|
|
|
|
+ MIGRATION_TOOL_FILE=$(basename "${URL}")
|
|
|
|
|
|
if [ -f "${MIGRATION_TOOL_FILE}" ]; then
|
|
if [ -f "${MIGRATION_TOOL_FILE}" ]; then
|
|
__info "Migration tool ${MIGRATION_TOOL_FILE} exists. Skip downloading."
|
|
__info "Migration tool ${MIGRATION_TOOL_FILE} exists. Skip downloading."
|
|
continue
|
|
continue
|
|
fi
|
|
fi
|
|
|
|
|
|
- # MIGRATION_TOOL_URL=http://192.168.2.197:8000/v1/package/migration?type=release&name="${APP_NAME_FORMAL}"&version=${VER2}&arch=${ARCH}
|
|
|
|
- MIGRATION_TOOL_URL=https://github.com/IceWhaleTech/"${APP_NAME_FORMAL}"/releases/download/"${VER2}"/linux-"${ARCH}"-"${APP_NAME}"-migration-tool-"${VER2}".tar.gz
|
|
|
|
- echo "Dowloading ${MIGRATION_TOOL_URL}..."
|
|
|
|
- curl -sL -O "${MIGRATION_TOOL_URL}"
|
|
|
|
|
|
+ __info "Dowloading ${URL}..."
|
|
|
|
+ curl -fsSL -o "${MIGRATION_TOOL_FILE}" -O "${URL}"
|
|
done
|
|
done
|
|
} || {
|
|
} || {
|
|
popd
|
|
popd
|
|
@@ -164,8 +160,8 @@ pushd "${MIGRATION_SERVICE_DIR}"
|
|
}
|
|
}
|
|
|
|
|
|
{
|
|
{
|
|
- for VER2 in "${MIGRATION_PATH[@]}"; do
|
|
|
|
- MIGRATION_TOOL_FILE=linux-"${ARCH}"-"${APP_NAME}"-migration-tool-"${VER2}".tar.gz
|
|
|
|
|
|
+ for URL in "${MIGRATION_PATH[@]}"; do
|
|
|
|
+ MIGRATION_TOOL_FILE=$(basename "${URL}")
|
|
__info "Extracting ${MIGRATION_TOOL_FILE}..."
|
|
__info "Extracting ${MIGRATION_TOOL_FILE}..."
|
|
tar zxvf "${MIGRATION_TOOL_FILE}" || __error "Failed to extract ${MIGRATION_TOOL_FILE}"
|
|
tar zxvf "${MIGRATION_TOOL_FILE}" || __error "Failed to extract ${MIGRATION_TOOL_FILE}"
|
|
|
|
|