upgrade: add upgrade script 04/88104/6 accepted/tizen/common/20160919.154630 accepted/tizen/ivi/20160920.052653 accepted/tizen/mobile/20160920.052606 accepted/tizen/tv/20160920.052618 accepted/tizen/wearable/20160920.052637 submit/tizen/20160919.061739
authortaeyoung <ty317.kim@samsung.com>
Tue, 13 Sep 2016 10:09:57 +0000 (19:09 +0900)
committertaeyoung <ty317.kim@samsung.com>
Mon, 19 Sep 2016 01:34:59 +0000 (10:34 +0900)
The script updates the permission, owner, and smack label
of the crash dump path. In addition, not used directories
are removed.

Change-Id: I43e727b5a7b6fe2a0c7636c82024b065239ba1d8
Signed-off-by: taeyoung <ty317.kim@samsung.com>
packaging/crash-worker.spec
src/crash-manager/CMakeLists.txt
src/crash-manager/crash-manager-upgrade.sh.in [new file with mode: 0644]

index 5d5fde035a42ef22a9f51419e1c7458bb2706a9b..a071e5c6eae0a5f3afca5d7c06403fc1917bce8d 100644 (file)
@@ -42,6 +42,8 @@ crash-manager
 %define crash_path      %{TZ_SYS_CRASH}
 %define crash_temp      %{crash_root_path}/temp
 
+%define upgrade_script_path %{TZ_SYS_RO_SHARE}/upgrade/scripts
+
 %build
 cp %{SOURCE1001} .
 
@@ -65,12 +67,14 @@ export CFLAGS+=" -Werror"
           -DARCH=%{ARCH} \
           -DARCH_BIT=%{ARCH_BIT} \
           -DTZ_SYS_BIN=%{TZ_SYS_BIN} \
+          -DCRASH_ROOT_PATH=%{crash_root_path} \
           -DCRASH_PATH=%{crash_path} \
           -DCRASH_TEMP=%{crash_temp} \
           -DCRASH_PIPE_PATH=%{_libexecdir}/crash-pipe \
           -DCRASH_STACK_PATH=%{_libexecdir}/crash-stack \
           -DCRASH_POPUP=%{crash_popup} \
-          -DSYS_ASSERT=%{sys_assert}
+          -DSYS_ASSERT=%{sys_assert} \
+          -DUPGRADE_SCRIPT_PATH=%{upgrade_script_path}
 # to add support for core dump files add backslash at the end of above line
 # and uncomment below line:
 #         -DWITH_CORE_DUMP=ON
@@ -98,6 +102,10 @@ if [ ! -d /.build ]; then
        fi
        chmod 644 %{_sysconfdir}/ld.so.preload
 fi
+
+/usr/bin/chsmack -a "System::Shared" -t %{crash_path}
+/usr/bin/chsmack -a "System::Shared" -t %{crash_temp}
+
 /sbin/ldconfig
 
 %postun
@@ -129,3 +137,5 @@ sed -i "/${pattern}/D" %{_sysconfdir}/ld.so.preload
 %{_libexecdir}/crash-pipe
 %{_libexecdir}/crash-stack
 
+#upgrade script
+%attr(-,root,root) %{upgrade_script_path}/crash-manager-upgrade.sh
index a775998f744b4bcf27e695a01e6e6913bb3d89c3..787934dc8327dc42d5aba79956d47e9c528c8106 100644 (file)
@@ -4,6 +4,7 @@ SET(CRASH_MANAGER "crash-manager")
 
 CONFIGURE_FILE(${CRASH_MANAGER}.sh.in ${CRASH_MANAGER}.sh @ONLY)
 CONFIGURE_FILE(99-${CRASH_MANAGER}.conf.in 99-${CRASH_MANAGER}.conf @ONLY)
+CONFIGURE_FILE(${CRASH_MANAGER}-upgrade.sh.in ${CRASH_MANAGER}-upgrade.sh @ONLY)
 
 INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/${CRASH_MANAGER}/${CRASH_MANAGER}.sh
                DESTINATION ${TZ_SYS_BIN}
@@ -13,3 +14,8 @@ INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/${CRASH_MANAGER}/${CRASH_MANAGER}.sh
 INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/${CRASH_MANAGER}/99-${CRASH_MANAGER}.conf
                DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/sysctl.d
                PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/${CRASH_MANAGER}/${CRASH_MANAGER}-upgrade.sh
+               DESTINATION ${UPGRADE_SCRIPT_PATH}
+               PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
+               GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
diff --git a/src/crash-manager/crash-manager-upgrade.sh.in b/src/crash-manager/crash-manager-upgrade.sh.in
new file mode 100644 (file)
index 0000000..63b2d3f
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+#----------------------------------------------#
+# crash-manager patch for upgrade (2.4 -> 3.0) #
+#----------------------------------------------#
+
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+
+rm -rf /opt/usr/share/crash # Crash path of Tizen 2.4
+
+mkdir -p @CRASH_ROOT_PATH@
+mkdir -p @CRASH_TEMP@
+mkdir -p @CRASH_PATH@
+
+find @CRASH_ROOT_PATH@ -type d | xargs chsmack -a "System::Shared" -t
+find @CRASH_ROOT_PATH@ -type d | xargs chmod 775
+find @CRASH_ROOT_PATH@ -type d | xargs chown system:system
+
+find @CRASH_PATH@ -type d | xargs chsmack -a "System::Shared" -t
+find @CRASH_PATH@ -type d | xargs chmod 775
+find @CRASH_PATH@ -type d | xargs chown system:system