Message ID | 1549362228-5731-3-git-send-email-angelo@amarulasolutions.com |
---|---|
State | Superseded |
Headers | show |
Series | Latest fixings to Mender | expand |
Acked-by: <aduskett@gmail.com> On Tue, Feb 5, 2019 at 11:24 AM Angelo Compagnucci <angelo@amarulasolutions.com> wrote: > > This patch adds a service file for the init system v. > > Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> > --- > package/mender/S04mender | 56 ++++++++++++++++++++++++++++++++++++++++++++++++ > package/mender/mender.mk | 5 +++++ > 2 files changed, 61 insertions(+) > create mode 100644 package/mender/S04mender > > diff --git a/package/mender/S04mender b/package/mender/S04mender > new file mode 100644 > index 0000000..d5266aa > --- /dev/null > +++ b/package/mender/S04mender > @@ -0,0 +1,56 @@ > +#!/bin/sh > +# > +# Starts mender service. > +# > + > +start() { > + # If /var/lib/mender is a symlink to /var/run/mender, and > + # - the filesystem is RO (i.e. we can not rm the symlink), > + # create the directory pointed to by the symlink. > + # - the filesystem is RW (i.e. we can rm the symlink), > + # replace the symlink with an actual directory > + 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 > + > + printf "Starting mender service: " > + umask 077 > + > + start-stop-daemon -S -q -p /var/run/mender.pid \ > + --exec /usr/bin/mender -- -daemon > + [ $? = 0 ] && echo "OK" || echo "FAIL" > +} > +stop() { > + printf "Stopping mender mender: " > + start-stop-daemon -K -q -p /var/run/mender.pid > + [ $? = 0 ] && echo "OK" || echo "FAIL" > +} > +restart() { > + stop > + start > +} > + > +case "$1" in > + start) > + start > + ;; > + stop) > + stop > + ;; > + restart|reload) > + restart > + ;; > + *) > + echo "Usage: $0 {start|stop|restart}" > + exit 1 > +esac > + > +exit $? > diff --git a/package/mender/mender.mk b/package/mender/mender.mk > index 3203df8..dc4a73b 100644 > --- a/package/mender/mender.mk > +++ b/package/mender/mender.mk > @@ -63,4 +63,9 @@ define MENDER_INSTALL_INIT_SYSTEMD > $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mender.service > endef > > +define MENDER_INSTALL_INIT_SYSV > + $(INSTALL) -D -m 755 package/mender/S04mender \ > + $(TARGET_DIR)/etc/init.d/S04mender > +endef > + > $(eval $(golang-package)) > -- > 2.7.4 > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
Angelo, Adam, About that one, I'm wondering if it could be problematic to start Mender before the network (as package/ifupdown-scripts installs S40network). Best regards, Titouan On Tue, 2019-02-05 at 11:29 +0100, Adam Duskett wrote: > Acked-by: <aduskett@gmail.com> > > On Tue, Feb 5, 2019 at 11:24 AM Angelo Compagnucci > <angelo@amarulasolutions.com> wrote: > > > > This patch adds a service file for the init system v. > > > > Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> > > --- > > package/mender/S04mender | 56 > > ++++++++++++++++++++++++++++++++++++++++++++++++ > > package/mender/mender.mk | 5 +++++ > > 2 files changed, 61 insertions(+) > > create mode 100644 package/mender/S04mender > > > > diff --git a/package/mender/S04mender b/package/mender/S04mender > > new file mode 100644 > > index 0000000..d5266aa > > --- /dev/null > > +++ b/package/mender/S04mender > > @@ -0,0 +1,56 @@ > > +#!/bin/sh > > +# > > +# Starts mender service. > > +# > > + > > +start() { > > + # If /var/lib/mender is a symlink to /var/run/mender, and > > + # - the filesystem is RO (i.e. we can not rm the > > symlink), > > + # create the directory pointed to by the symlink. > > + # - the filesystem is RW (i.e. we can rm the symlink), > > + # replace the symlink with an actual directory > > + 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 > > + > > + printf "Starting mender service: " > > + umask 077 > > + > > + start-stop-daemon -S -q -p /var/run/mender.pid \ > > + --exec /usr/bin/mender -- -daemon > > + [ $? = 0 ] && echo "OK" || echo "FAIL" > > +} > > +stop() { > > + printf "Stopping mender mender: " > > + start-stop-daemon -K -q -p /var/run/mender.pid > > + [ $? = 0 ] && echo "OK" || echo "FAIL" > > +} > > +restart() { > > + stop > > + start > > +} > > + > > +case "$1" in > > + start) > > + start > > + ;; > > + stop) > > + stop > > + ;; > > + restart|reload) > > + restart > > + ;; > > + *) > > + echo "Usage: $0 {start|stop|restart}" > > + exit 1 > > +esac > > + > > +exit $? > > diff --git a/package/mender/mender.mk b/package/mender/mender.mk > > index 3203df8..dc4a73b 100644 > > --- a/package/mender/mender.mk > > +++ b/package/mender/mender.mk > > @@ -63,4 +63,9 @@ define MENDER_INSTALL_INIT_SYSTEMD > > $(TARGET_DIR)/etc/systemd/system/multi- > > user.target.wants/mender.service > > endef > > > > +define MENDER_INSTALL_INIT_SYSV > > + $(INSTALL) -D -m 755 package/mender/S04mender \ > > + $(TARGET_DIR)/etc/init.d/S04mender > > +endef > > + > > $(eval $(golang-package)) > > -- > > 2.7.4 > > > > _______________________________________________ > > buildroot mailing list > > buildroot@busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
diff --git a/package/mender/S04mender b/package/mender/S04mender new file mode 100644 index 0000000..d5266aa --- /dev/null +++ b/package/mender/S04mender @@ -0,0 +1,56 @@ +#!/bin/sh +# +# Starts mender service. +# + +start() { + # If /var/lib/mender is a symlink to /var/run/mender, and + # - the filesystem is RO (i.e. we can not rm the symlink), + # create the directory pointed to by the symlink. + # - the filesystem is RW (i.e. we can rm the symlink), + # replace the symlink with an actual directory + 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 + + printf "Starting mender service: " + umask 077 + + start-stop-daemon -S -q -p /var/run/mender.pid \ + --exec /usr/bin/mender -- -daemon + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping mender mender: " + start-stop-daemon -K -q -p /var/run/mender.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/mender/mender.mk b/package/mender/mender.mk index 3203df8..dc4a73b 100644 --- a/package/mender/mender.mk +++ b/package/mender/mender.mk @@ -63,4 +63,9 @@ define MENDER_INSTALL_INIT_SYSTEMD $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mender.service endef +define MENDER_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/mender/S04mender \ + $(TARGET_DIR)/etc/init.d/S04mender +endef + $(eval $(golang-package))
This patch adds a service file for the init system v. Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> --- package/mender/S04mender | 56 ++++++++++++++++++++++++++++++++++++++++++++++++ package/mender/mender.mk | 5 +++++ 2 files changed, 61 insertions(+) create mode 100644 package/mender/S04mender