Add upgrade script for pkg db version 30009 93/286793/2
authorSangyoon Jang <jeremy.jang@samsung.com>
Fri, 13 Jan 2023 02:28:45 +0000 (11:28 +0900)
committerSangyoon Jang <jeremy.jang@samsung.com>
Fri, 13 Jan 2023 02:31:25 +0000 (11:31 +0900)
package_metadata table was added.

Change-Id: I076aadf3bdd06769eb381459d2b524515769417a
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
CMakeLists.txt
data/updates/upgrade_to_30009.sh.in [new file with mode: 0644]
packaging/pkgmgr-tool.spec

index bd310e6..9422904 100644 (file)
@@ -92,3 +92,5 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30007.sh.in u
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30007.sh DESTINATION /etc/package-manager/updates/)
 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30008.sh.in upgrade_to_30008.sh @ONLY)
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30008.sh DESTINATION /etc/package-manager/updates/)
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/data/updates/upgrade_to_30009.sh.in upgrade_to_30009.sh @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_to_30009.sh DESTINATION /etc/package-manager/updates/)
diff --git a/data/updates/upgrade_to_30009.sh.in b/data/updates/upgrade_to_30009.sh.in
new file mode 100644 (file)
index 0000000..a98f440
--- /dev/null
@@ -0,0 +1,50 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+
+source /etc/tizen-platform.conf
+
+PARSER_DB_NAME=.pkgmgr_parser.db
+CERT_DB_NAME=.pkgmgr_cert.db
+GLOBAL_PARSER_DB_PATH=$TZ_SYS_DB/$PARSER_DB_NAME
+GLOBAL_CERT_DB_PATH=$TZ_SYS_DB/$CERT_DB_NAME
+
+function migrate_global_certdb() {
+  echo "PRAGMA user_version=30009;" | sqlite3 $GLOBAL_CERT_DB_PATH
+}
+
+function migrate_parserdb() {
+  local db_path=$1
+
+  #package_metadata
+  echo "CREATE TABLE IF NOT EXISTS package_metadata (
+  package TEXT NOT NULL,
+  md_key TEXT NOT NULL,
+  md_value TEXT,
+  PRIMARY KEY(package, md_key, md_value)
+  FOREIGN KEY(package)
+  REFERENCES package_info(package) ON DELETE CASCADE);" | sqlite3 $db_path
+
+  echo "PRAGMA user_version=30009;" | sqlite3 $db_path
+}
+
+function migrate_global_parserdb() {
+  echo "#migrate global parserdb"
+  migrate_parserdb $GLOBAL_PARSER_DB_PATH
+}
+
+function migrate_user_parserdb() {
+  echo "#migrate user parserdb"
+  ls $TZ_SYS_DB/user | while read USERID
+  do
+    migrate_parserdb $TZ_SYS_DB/user/$USERID/$PARSER_DB_NAME
+  done
+}
+
+#migrate global parser db and version
+migrate_global_parserdb
+
+#migrate user parser db and version
+migrate_user_parserdb
+
+#migrade cert db and version
+migrate_global_certdb
index 0ae9244..532d09b 100644 (file)
@@ -162,6 +162,7 @@ update-mime-database %{_datadir}/mime
 %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30006.sh
 %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30007.sh
 %attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30008.sh
+%attr(0700,root,root) /etc/package-manager/updates/upgrade_to_30009.sh
 %attr(0700,root,root) %{_sysconfdir}/package-manager/pkgmgr-label-initial-image.sh
 
 %files unittests