From: Sangyoon Jang Date: Wed, 16 Jan 2019 09:39:40 +0000 (+0900) Subject: Add package dependency attribute to upgrade script X-Git-Tag: submit/tizen/20190315.084013~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fddf5c776f25eeacf0cd0a34ebcba3d37f76f77d;p=platform%2Fcore%2Fappfw%2Fpkgmgr-tool.git Add package dependency attribute to upgrade script Change-Id: Ic85f83896f6de645b572f884407f77e3099ecc04 Signed-off-by: Sangyoon Jang --- diff --git a/CMakeLists.txt b/CMakeLists.txt index d54965e..f688adc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -90,3 +90,5 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30002.sh.in u INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30002.sh DESTINATION /etc/package-manager/updates/) CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30003.sh.in upgrade_to_30003.sh $ONLY) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30003.sh DESTINATION /etc/package-manager/updates/) +CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30004.sh.in upgrade_to_30004.sh $ONLY) +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30004.sh DESTINATION /etc/package-manager/updates/) diff --git a/data/updates/upgrade_to_30004.sh.in b/data/updates/upgrade_to_30004.sh.in new file mode 100644 index 0000000..23509a3 --- /dev/null +++ b/data/updates/upgrade_to_30004.sh.in @@ -0,0 +1,34 @@ +#!/bin/sh +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +source /etc/tizen-platform.conf + +PARSER_DB_NAME=.pkgmgr_parser.db +PARSER_DB_PATH=$TZ_SYS_DB/$PARSER_DB_NAME + +function migrate_parser_db() { + local dbpath=$1 + + echo -e "CREATE TABLE IF NOT EXISTS package_dependency_info (\n" \ + " package TEXT NOT NULL,\n" \ + " depends_on TEXT NOT NULL,\n" \ + " type TEXT NOT NULL,\n" \ + " required_version TEXT,\n" \ + " PRIMARY KEY(package, depends_on, type, required_version)\n" \ + " FOREIGN KEY(package)\n" \ + " REFERENCES package_info(package) ON DELETE CASCADE);" | sqlite3 $dbpath + + echo "PRAGMA user_version=30004;" | sqlite3 $dbpath +} + +function migrate_user_db() { + #get each user db path and call migrate_parser_db for each of it + + find $TZ_SYS_DB/user -name $PARSER_DB_NAME | while read DBPATH + do + migrate_parser_db $DBPATH + done +} + +migrate_parser_db $PARSER_DB_PATH +migrate_user_db diff --git a/packaging/pkgmgr-tool.spec b/packaging/pkgmgr-tool.spec index ca78341..c2cc48d 100644 --- a/packaging/pkgmgr-tool.spec +++ b/packaging/pkgmgr-tool.spec @@ -75,6 +75,7 @@ update-mime-database %{_datadir}/mime %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30001.sh %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30002.sh %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30003.sh +%attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30004.sh %attr(0700,root,root) /usr/share/upgrade/scripts/701.app2sd.patch.sh %attr(0700,root,root) %{_sysconfdir}/opt/upgrade/pkgmgr.patch.sh %attr(0700,root,root) /usr/share/fixed_multiuser/scripts/pkgmgr-clear-skel.sh