Change-Id: I0d0c78a84749003900ce920cb17eb1650fc3bfbb
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
[Unit]
Description=Clone partitions
After=system-delayed-target-done.service
-ConditionKernelCommandLine=|bootmode=normal
-ConditionKernelCommandLine=|bootmode=ramdisk
[Service]
Type=simple
SmackProcessLabel=System
-ExecStart=/usr/bin/sh -c "/usr/bin/sleep 60; /usr/bin/clone_partitions.sh"
+ExecStart=/usr/bin/clone_partitions.sh background
RemainAfterExit=true
Nice=19
IOSchedulingClass=idle
do_clone
set_partition_status_ok
;;
+ "background")
+ # wait for 60 seconds to wait for bootup
+ sleep 60
+
+ BOOTMODE=$(device_board_get_boot_mode)
+ RET_BOOT_MODE=$?
+ if [ ${RET_BOOT_MODE} -ne 0 ]; then
+ critical_log "[Error] Cannot get boot mode: ${RET_BOOT_MODE}"
+ exit 1
+ fi
+
+ if [ "${BOOTMODE}" != "normal" ]; then
+ log "[Info] bootmode is not \"normal\": ${BOOTMODE}"
+ exit 0
+ fi
+
+ if [ "$(device_board_get_partition_ab_cloned)" -eq "1" ]; then
+ log "[Info] Partitions already cloned"
+ else
+ do_clone
+ fi
+ ;;
*)
if [ "$(device_board_get_partition_ab_cloned)" -eq "1" ]; then
log "[Info] Partitions already cloned"