Add DataMigration Script for OSU 69/308969/1
authorJi-hoon Lee <dalton.lee@samsung.com>
Wed, 3 Apr 2024 07:15:35 +0000 (16:15 +0900)
committerJi-hoon Lee <dalton.lee@samsung.com>
Wed, 3 Apr 2024 07:15:58 +0000 (16:15 +0900)
Change-Id: I297c312e5e92f11135881564bf18b8b471791a83

packaging/multi-assistant.spec
script/migration/multi-assistant.sh [new file with mode: 0644]

index 634d377..aa8ffbf 100644 (file)
@@ -100,6 +100,9 @@ make %{?jobs:-j%jobs}
 %install
 rm -rf %{buildroot}
 
+mkdir -p %{buildroot}%{_datadir}/upgrade/vd_scripts/additional_scripts
+install -p -m 500 script/migration/multi-assistant.sh %{buildroot}%{_datadir}/upgrade/vd_scripts/additional_scripts/multi-assistant.sh
+
 %make_install
 
 %if 0%{?gcov:1}
@@ -163,6 +166,7 @@ mkdir -p %{_libdir}/multiassistant/ma
 %{TZ_SYS_RO_SHARE}/dbus-1/services/org.tizen.multiassistant*
 %{TZ_SYS_RO_SHARE}/parser-plugins/multi-assistant.info
 %{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libma_assistant_parser.so*
+%{_datadir}/upgrade/vd_scripts/additional_scripts/multi-assistant.sh
 
 %files devel
 %manifest %{name}-devel.manifest
diff --git a/script/migration/multi-assistant.sh b/script/migration/multi-assistant.sh
new file mode 100644 (file)
index 0000000..7dbde12
--- /dev/null
@@ -0,0 +1,63 @@
+#!/bin/bash
+
+# list vconf keys of multi-assistant up to migrate
+###BackupVconfkey: db/multi-assistant/activated
+###BackupVconfkey: db/multi-assistant/conversation_timeout
+###BackupVconfkey: db/multi-assistant/default_assistant_appid
+###BackupVconfkey: db/multi-assistant/dependency_module_path
+###BackupVconfkey: db/multi-assistant/enabled_assistants
+###BackupVconfkey: db/multi-assistant/multiple_mode
+###BackupVconfkey: db/multi-assistant/streaming_duration_max
+
+
+# sourcing headers for Migration API
+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"
+
+# migration Main function
+function set_dst_path() {
+    if [ ! -e $1 ]; then
+        log I "multi-assistant migration set destination path $1"
+        mkdir -p -m 0755 $1
+        chsmack -t $1
+        chsmack -a "User::App::Shared" $1
+    else
+        log E "Already exist path $1"
+    fi
+}
+
+function multi_assistant_migration() {
+    log I "multi-assistant migration START"
+    log I "multi-assistant migration config files"
+
+    local SRC_OWNER_PATH=${get_old_rw_path}/usr/home/owner/share/.multiassistant/
+    local SRC_GUEST_PATH=${get_old_rw_path}/usr/home/guest/share/.multiassistant/
+    local SRC_GLOBAL_PATH=${get_old_rw_path}/etc/skel/share/.multiassistant/
+
+    local DST_OWNER_PATH=${get_rw_path}/usr/home/owner/share/.multiassistant/
+    local DST_GUEST_PATH=${get_rw_path}/usr/home/guest/share/.multiassistant/
+    local DST_GLOBAL_PATH=${get_rw_path}/etc/skel/share/.multiassistant/
+
+    set_dst_path DST_OWNER_PATH
+    set_dst_path DST_GUEST_PATH
+    set_dst_path DST_GLOBAL_PATH
+
+    mig_copy $SRC_OWNER_PATH/ma $DST_OWNER_PATH || error_handle "default_data" $LINENO
+    mig_copy $SRC_GUEST_PATH/ma $DST_GUEST_PATH || error_handle "default_data" $LINENO
+    mig_copy $SRC_GLOBAL_PATH/ma $DST_GLOBAL_PATH || error_handle "default_data" $LINENO
+}
+
+# trace flag check & enable
+if is_trace_enable; then
+    is_trace_enable
+fi
+
+# running part: b/w mig_init and mig_finish
+mig_init
+multi_assistant_migration
+mig_finish
+
+exit 0