From ed61a6fe3c0481193b831e62192dc070c6bdf124 Mon Sep 17 00:00:00 2001 From: Younho Park Date: Tue, 30 Aug 2016 14:42:23 +0900 Subject: [PATCH] add upgrade script Change-Id: I40bf644a2bbe7e0257d26eb3592c4a0d05c172ce Signed-off-by: Younho Park --- packaging/account-manager.spec | 6 +++++ scripts/account-manager-upgrade.sh | 48 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 scripts/account-manager-upgrade.sh diff --git a/packaging/account-manager.spec b/packaging/account-manager.spec index cb9741b..f0b247f 100644 --- a/packaging/account-manager.spec +++ b/packaging/account-manager.spec @@ -24,6 +24,8 @@ BuildRequires: pkgconfig(cynara-creds-gdbus) BuildRequires: pkgconfig(account-common) #BuildRequires: pkgconfig(libtzplatform-config) +%define upgrade_script_path /usr/share/upgrade/scripts + Requires(post): /sbin/ldconfig Requires(post): /usr/bin/sqlite3 Requires(postun): /sbin/ldconfig @@ -70,6 +72,9 @@ mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants install -m 644 %SOURCE3 %{buildroot}%{_unitdir}/accounts-service.service %install_service multi-user.target.wants accounts-service.service +mkdir -p %{buildroot}%{upgrade_script_path} +cp -f scripts/%{name}-upgrade.sh %{buildroot}%{upgrade_script_path} + %post /sbin/ldconfig #if [ ! -d /opt/usr/dbspace ] @@ -113,4 +118,5 @@ chmod 660 %{TZ_SYS_DB}/.account.db-journal %attr(0644,root,root) %{_unitdir}/accounts-service.service %attr(0644,root,root) %{_unitdir}/multi-user.target.wants/accounts-service.service %attr(0644,root,root) /usr/share/dbus-1/system-services/org.tizen.account.manager.service +%{upgrade_script_path}/%{name}-upgrade.sh diff --git a/scripts/account-manager-upgrade.sh b/scripts/account-manager-upgrade.sh new file mode 100644 index 0000000..594c47c --- /dev/null +++ b/scripts/account-manager-upgrade.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +#------------------------------------------------# +# Account Manager patch for upgrade (2.4 -> 3.0) # +#------------------------------------------------# + +# 2.4 +ACCOUNT_DB_DIR_24=/opt/usr/dbspace + +# 3.0 +ACCOUNT_GLOBAL_USER_DB_DIR_30=/opt/dbspace +ACCOUNT_USER_DB_DIR_30=/opt/dbspace/5001 + +ACCOUNT_DB_24=$ACCOUNT_DB_DIR_24/.account.db +ACCOUNT_GLOBAL_USER_DB_30=$ACCOUNT_GLOBAL_USER_DB_DIR_30/.account.db +ACCOUNT_USER_DB_30=$ACCOUNT_USER_DB_DIR_30/.account.db + +mkdir -p $ACCOUNT_GLOBAL_USER_DB_DIR_30 +mkdir -p $ACCOUNT_USER_DB_DIR_30 + +# Copy DB +cp -rf $ACCOUNT_DB_24 $ACCOUNT_GLOBAL_USER_DB_DIR_30 +cp -rf $ACCOUNT_DB_24-journal $ACCOUNT_GLOBAL_USER_DB_DIR_30 + +cp -rf $ACCOUNT_DB_24 $ACCOUNT_USER_DB_DIR_30 +cp -rf $ACCOUNT_DB_24-journal $ACCOUNT_USER_DB_DIR_30 + +chown service_fw:service_fw $ACCOUNT_GLOBAL_USER_DB_30 +chown service_fw:service_fw $ACCOUNT_GLOBAL_USER_DB_30-journal +chown service_fw:service_fw $ACCOUNT_USER_DB_30 +chown service_fw:service_fw $ACCOUNT_USER_DB_30-journal + +chmod 660 $ACCOUNT_GLOBAL_USER_DB_30 +chmod 660 $ACCOUNT_GLOBAL_USER_DB_30-journal +chmod 660 $ACCOUNT_USER_DB_30 +chmod 660 $ACCOUNT_USER_DB_30-journal + +# Delete DB +rm -rf $ACCOUNT_DB_24 +rm -rf $ACCOUNT_DB_24-journal + +#update account DB +sqlite3 $ACCOUNT_GLOBAL_USER_DB_30 "delete from account" +sqlite3 $ACCOUNT_GLOBAL_USER_DB_30 "delete from capability" +sqlite3 $ACCOUNT_USER_DB_30 "delete from account_type" +sqlite3 $ACCOUNT_USER_DB_30 "delete from label" +sqlite3 $ACCOUNT_USER_DB_30 "delete from provider_feature" + -- 2.7.4