Add upgrade script for moving rw data 62/87962/1 accepted/tizen/common/20160912.181800 accepted/tizen/ivi/20160913.042113 accepted/tizen/mobile/20160913.042013 accepted/tizen/tv/20160913.042032 accepted/tizen/wearable/20160913.042057 submit/tizen/20160912.100526
authorKyungwook Tak <k.tak@samsung.com>
Mon, 12 Sep 2016 09:55:50 +0000 (18:55 +0900)
committerKyungwook Tak <k.tak@samsung.com>
Mon, 12 Sep 2016 09:55:50 +0000 (18:55 +0900)
Change-Id: Iab98d014daf3bee0785c21a14657c0b1f6d4c5a8
Signed-off-by: Kyungwook Tak <k.tak@samsung.com>
CMakeLists.txt
data/CMakeLists.txt
data/scripts/235.key-manager-move-rw-from-upgrade-dir.patch.sh.in [new file with mode: 0644]
data/scripts/CMakeLists.txt
packaging/key-manager.spec

index fe534f4..d15650f 100644 (file)
@@ -65,6 +65,7 @@ ADD_DEFINITIONS("-DBIN_DIR=\"${BIN_DIR}\"")
 ADD_DEFINITIONS("-DINITIAL_VALUES_DIR=\"${INITIAL_VALUES_DIR}\"")
 ADD_DEFINITIONS("-DCA_CERTS_DIR=\"${CA_CERTS_DIR}\"")
 ADD_DEFINITIONS("-DSYSTEMD_ENV_FILE=\"${SYSTEMD_ENV_FILE}\"")
+ADD_DEFINITIONS("-DUPGRADE_DATA_DIR=\"${UPGRADE_DATA_DIR}\"")
 
 IF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
     ADD_DEFINITIONS("-DTIZEN_DEBUG_ENABLE")
index d6d9f4a..00acf2f 100644 (file)
@@ -20,3 +20,4 @@ ADD_SUBDIRECTORY(gumd)
 ADD_SUBDIRECTORY(scripts)
 
 INSTALL(DIRECTORY DESTINATION ${INITIAL_VALUES_DIR})
+INSTALL(DIRECTORY DESTINATION ${UPGRADE_DATA_DIR}/key-manager/initial_values)
diff --git a/data/scripts/235.key-manager-move-rw-from-upgrade-dir.patch.sh.in b/data/scripts/235.key-manager-move-rw-from-upgrade-dir.patch.sh.in
new file mode 100644 (file)
index 0000000..1e2a4ee
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/bash
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+
+# Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+#
+#    Licensed under the Apache License, Version 2.0 (the "License");
+#    you may not use this file except in compliance with the License.
+#    You may obtain a copy of the License at
+#
+#        http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS,
+#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#    See the License for the specific language governing permissions and
+#    limitations under the License.
+#
+# @file        235.key-manager-move-rw-from-upgrade-dir.patch.sh.in
+# @author      Kyungwook Tak (k.tak@samsung.com)
+# @brief       Moves newly added directory / file from upgrade dir
+#
+
+RW_DATA_DIR=@RW_DATA_DIR@
+UPGRADE_DATA_DIR=@UPGRADE_DATA_DIR@/key-manager
+
+if [ ! -d "${RW_DATA_DIR}/initial_values" ]; then
+    mv ${UPGRADE_DATA_DIR}/initial_values ${RW_DATA_DIR}/
+    chmod -R 770 ${RW_DATA_DIR}/initial_values
+    chown -R @USER_NAME@:@GROUP_NAME@ ${RW_DATA_DIR}/initial_values
+    chsmack -r -a "@SMACK_DOMAIN_NAME@" ${RW_DATA_DIR}/initial_values
+fi
index 742ff21..02ab552 100644 (file)
@@ -37,12 +37,17 @@ CONFIGURE_FILE(234.key-manager-move-certsvc-migratable-data.patch.sh.in
                234.key-manager-move-certsvc-migratable-data.patch.sh
                @ONLY)
 
+CONFIGURE_FILE(235.key-manager-move-rw-from-upgrade-dir.patch.sh.in
+               235.key-manager-move-rw-from-upgrade-dir.patch.sh
+               @ONLY)
+
 INSTALL(FILES
         230.key-manager-change-data-dir.patch.sh
         231.key-manager-migrate-dkek.patch.sh
         232.key-manager-change-user.patch.sh
         233.key-manager-move-ss-migratable-data.patch.sh
         234.key-manager-move-certsvc-migratable-data.patch.sh
+        235.key-manager-move-rw-from-upgrade-dir.patch.sh
     DESTINATION ${UPGRADE_SCRIPT_DIR}
     PERMISSIONS
         OWNER_READ
index 647e47d..b6af62a 100644 (file)
@@ -48,7 +48,9 @@ Requires: libkey-manager-common = %{version}-%{release}
 %global initial_values_dir %{rw_data_dir}/initial_values
 %global ca_certs_dir %{?TZ_SYS_CA_CERTS:%TZ_SYS_CA_CERTS}%{!?TZ_SYS_CA_CERTS:%ro_etc_dir/ssl/certs}
 
-%global upgrade_script_dir %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:%_datadir}/upgrade/scripts
+%global upgrade_dir %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:%_datadir}/upgrade
+%global upgrade_script_dir %{upgrade_dir}/scripts
+%global upgrade_data_dir %{upgrade_dir}/data
 
 %description
 Central Key Manager daemon could be used as secure storage
@@ -145,7 +147,8 @@ export LDFLAGS+="-Wl,--rpath=%{_libdir},-Bsymbolic-functions "
         -DINITIAL_VALUES_DIR=%{initial_values_dir} \
         -DDB_TEST_DIR=%{db_test_dir} \
         -DCA_CERTS_DIR=%{ca_certs_dir} \
-        -DUPGRADE_SCRIPT_DIR=%{upgrade_script_dir}
+        -DUPGRADE_SCRIPT_DIR=%{upgrade_script_dir} \
+        -DUPGRADE_DATA_DIR=%{upgrade_data_dir}
 
 make %{?jobs:-j%jobs}
 
@@ -249,11 +252,13 @@ fi
 %dir %attr(770, %{user_name}, %{group_name}) %{rw_data_dir}
 %dir %attr(770, %{user_name}, %{group_name}) %{initial_values_dir}
 
+%dir %{upgrade_data_dir}/key-manager/initial_values
 %{upgrade_script_dir}/230.key-manager-change-data-dir.patch.sh
 %{upgrade_script_dir}/231.key-manager-migrate-dkek.patch.sh
 %{upgrade_script_dir}/232.key-manager-change-user.patch.sh
 %{upgrade_script_dir}/233.key-manager-move-ss-migratable-data.patch.sh
 %{upgrade_script_dir}/234.key-manager-move-certsvc-migratable-data.patch.sh
+%{upgrade_script_dir}/235.key-manager-move-rw-from-upgrade-dir.patch.sh
 %{ro_etc_dir}/gumd/userdel.d/10_key-manager.post
 %{bin_dir}/ckm_tool