Add DataMigration Script for OSU 37/308937/3
authorsungwook79.park <sungwook79.park@samsung.com>
Wed, 3 Apr 2024 04:34:53 +0000 (13:34 +0900)
committersungwook79.park <sungwook79.park@samsung.com>
Wed, 3 Apr 2024 08:13:05 +0000 (17:13 +0900)
Change-Id: I6237a252e8ebb9f17551e93b66efddf4e5bf170a
Signed-off-by: sungwook79.park <sungwook79.park@samsung.com>
packaging/voice-control.spec
script/migration/voice_control.sh [new file with mode: 0644]

index 98471d84cfd5e6bca1b9548400001a63419019b6..8ae0cf5fbf83f2b1ae0e11a5ab04553692db9b98 100644 (file)
@@ -154,6 +154,9 @@ make %{?jobs:-j%jobs}
 %install
 rm -rf %{buildroot}
 
+mkdir -p %{buildroot}%{_datadir}/upgrade/vd_scripts/additional_scripts
+install -p -m 500 script/migration/voice_control.sh %{buildroot}%{_datadir}/upgrade/vd_scripts/additional_scripts/voice_control.sh
+
 %make_install
 
 %if 0%{?gcov:1}
@@ -229,6 +232,7 @@ mkdir -p %{_libdir}/voice/vc
 %{TZ_SYS_RO_SHARE}/voice/vc/1.0/dependency-audio-manager/libvc-audio-manager.so
 %{TZ_SYS_RO_SHARE}/parser-plugins/voice-control.info
 %{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libvc-engine-parser.so*
+%{_datadir}/upgrade/vd_scripts/additional_scripts/voice_control.sh
 
 %files devel
 %manifest %{name}-devel.manifest
diff --git a/script/migration/voice_control.sh b/script/migration/voice_control.sh
new file mode 100644 (file)
index 0000000..9c13b84
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+###BackupVconfKey: db/voice/vc/engine/default
+
+source "$UPDATE_EXEC_PATH/common/util.inc"
+source "$UPDATE_EXEC_PATH/common/debug.inc"
+source "$UPDATE_EXEC_PATH/common/mig_ctl.inc"
+source "$UPDATE_EXEC_PATH/common/path_ctl.inc"
+source "$UPDATE_EXEC_PATH/common/error_handle.inc"
+
+function vc_migration() {
+    log I "VC Migration start"
+    log I "VC Migration config files"
+
+    local SRC_PATH=$(get_old_rw_path)/usr/home/owner/share/.voice/vc/
+    local DST_PATH=$(get_rw_path)/usr/home/owner/share/.voice/vc/
+    local SRC_CONF_PATH=$(get_old_rw_path)/usr/home/owner/share/.voice/vc-config.xml
+    local DST_CONF_PATH=$(get_old_rw_path)/usr/home/owner/share/.voice/
+
+    if [ ! -e $DST_PATH ]; then
+        log I "VC Migration set destination path"
+        mkdir -p -m 0775 $(get_rw_path)/usr/home/owner/share/.voice/vc/
+        chsmack -t $(get_rw_path)/usr/home/owner/share/.voice/vc
+        chsmack -a "User::App::Shared" $(get_rw_path)/usr/home/owner/share/.voice/vc
+        mkdir -p $(get_rw_path)/usr/home/owner/share/.voice/vc/1.0/engine-info
+        chsmack -a "User::App::Shared" $(get_rw_path)/usr/home/owner/share/.voice/vc
+        chsmack -t $(get_rw_path)/usr/home/owner/share/.voice/vc/1.0/engine-info
+        chsmack -a "User::App::Shared" $(get_rw_path)/usr/home/owner/share/.voice/vc/1.0/engine-info/
+        chown -R ui_fw:users $(get_rw_path)/usr/home/owner/share/.voice/vc/
+    fi
+
+    if [ ! -e $SRC_PATH ]; then
+        log E "VC Migration ERROR : No orignal Data"
+        return
+    fi
+
+    mig_copy $SRC_PATH $DST_PATH || error_handle "default_data" $LINENO
+    mig_copy $SRC_CONF_PATH $DST_CONF_PATH || error_handle "default_data" $LINENO
+
+    log I "VC Migration end"
+}
+
+# Trace flag check & enable
+if is_trace_enable; then
+    trace_enable
+fi
+
+mig_init
+vc_migration
+mig_finish
+
+exit 0