From: Ji-hoon Lee Date: Mon, 25 Nov 2024 04:43:30 +0000 (+0900) Subject: Add upgrade script X-Git-Tag: accepted/tizen/unified/20250305.160207~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6ea2d47a3c1fd8fa16d047fdf94a911cea59eace;p=platform%2Fcore%2Fuifw%2Fmulti-assistant.git Add upgrade script Change-Id: Id47d9327ceb47c6fe5d1a6f94cc37343c99fe511 --- diff --git a/packaging/multi-assistant.spec b/packaging/multi-assistant.spec index 8ec3bbd..5a4138b 100644 --- a/packaging/multi-assistant.spec +++ b/packaging/multi-assistant.spec @@ -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 index 0000000..d1edfd2 --- /dev/null +++ b/script/migration/multi-assistant.sh @@ -0,0 +1,66 @@ +#!/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() { + local DST_PARENT_PATH=$(dirname $1) + if [ ! -e $DST_PARENT_PATH ]; then + mkdir -p -m 0777 $DST_PARENT_PATH + chown "owner:users" $DST_PARENT_PATH + chsmack -t $DST_PARENT_PATH + chsmack -a "User::App::Shared" $DST_PARENT_PATH + fi +} + +function multi_assistant_migration() { + log I "multi-assistant Migration START" + + 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/ + + if [ ! -e $SRC_OWNER_PATH ]; then + return + fi + if [ ! -e $SRC_GUEST_PATH ]; then + return + fi + + local DST_OWNER_PATH=$(get_rw_path)/usr/home/owner/share/.multiassistant/ + local DST_GUEST_PATH=$(get_rw_path)/usr/home/guest/share/.multiassistant/ + + set_dst_path $DST_OWNER_PATH + set_dst_path $DST_GUEST_PATH + + mig_copy $SRC_OWNER_PATH $DST_OWNER_PATH || error_handle "default_data" $LINENO + mig_copy $SRC_GUEST_PATH $DST_GUEST_PATH || error_handle "default_data" $LINENO + + log I "multi-assistant Migration DONE" +} + +# 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