package/mender: adding a writable location

Mender needs /var/lib/mender to be writable at the service start, the
path is hardcoded and thus we cannot change it.
This patch solves the problem using the same approach we have for
dropbear.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: <aduskett@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Angelo Compagnucci 2019-02-05 11:49:55 +01:00 committed by Peter Korsgaard
parent 6da049f8ae
commit e78d516178
2 changed files with 13 additions and 1 deletions

View File

@ -49,6 +49,8 @@ define MENDER_INSTALL_CONFIG_FILES
$(INSTALL) -D -m 0755 $(@D)/support/mender-inventory-$(f) \
$(TARGET_DIR)/usr/share/mender/inventory/mender-inventory-$(f)
)
ln -snf /var/run/mender $(TARGET_DIR)/var/lib/mender
endef
MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_CONFIG_FILES

View File

@ -6,7 +6,17 @@ After=systemd-resolved.service
Type=idle
User=root
Group=root
ExecStartPre=/bin/mkdir -p -m 0700 /data/mender
ExecStartPre=/bin/sh -c '\
if [ -L /var/lib/mender \
-a "$(readlink /var/lib/mender)" = "/var/run/mender" ]; then \
if rm -f /var/lib/mender >/dev/null 2>&1; then \
mkdir -p /var/lib/mender; \
else \
echo "No persistent location to store mender data. Data will be lost\
echo "at reboot. Are you sure this is what you want to do?"; \
mkdir -p "$(readlink /var/lib/mender)"; \
fi; \
fi'
ExecStart=/usr/bin/mender -daemon
Restart=on-abort