[oe] [meta-webserver][PATCHv2 1/2] nginx: optimize systemd unit file

Martin Jansa martin.jansa at gmail.com
Thu Aug 18 17:02:19 UTC 2016


Then please send tested v3.

Thanks

On Thu, Aug 18, 2016 at 6:41 PM, Szombathelyi György <gyurco at freemail.hu>
wrote:

> Hi,
>
> Sorry for the wrong patch, but this has also some problems (inlined):
>
> On Thursday, August 18, 2016 6:09:38 PM CEST Martin Jansa wrote:
> > From: Szombathelyi György <gyurco at freemail.hu>
> >
> > - Call the nginx binary directly, no need to wrap the SysV init file.
> > - Create /var/log/nginx with tmpfiles, like volatiles without systemd.
> > - Run nginx with ${NGINX_USER} (user ${NGINX_USER} in nginx.conf)
> >
> > Signed-off-by: Gyorgy Szombathelyi <gyurco at freemail.hu>
> > ---
> >  meta-webserver/recipes-httpd/nginx/files/nginx.service | 9 ++++-----
> >  meta-webserver/recipes-httpd/nginx/nginx.inc           | 5 +++--
> >  2 files changed, 7 insertions(+), 7 deletions(-)
> >
> > diff --git a/meta-webserver/recipes-httpd/nginx/files/nginx.service
> > b/meta-webserver/recipes-httpd/nginx/files/nginx.service index
> > 9926a4b..ce99061 100644
> > --- a/meta-webserver/recipes-httpd/nginx/files/nginx.service
> > +++ b/meta-webserver/recipes-httpd/nginx/files/nginx.service
> > @@ -3,10 +3,9 @@ Description=Nginx Server
> >  After=network.target
> >  [Service]
> >  Type=forking
> > -PIDFile=@SYSCONFDIR@/nginx/run/nginx.pid
> > -ExecStartPre=@BASEBINDIR@/mkdir -p @LOCALSTATEDIR@/log/nginx
> > -ExecStart=@SYSCONFDIR@/init.d/nginx start
> > -ExecStop=@SYSCONFDIR@/init.d/nginx stop
> > +PIDFile=/run/nginx/nginx.pid
> > +ExecStart=@SBINDIR@/nginx
> > +ExecStop=@SBINDIR@/nginx -s stop
> > +ExecReload=@SBINDIR@/nginx -s reload
> >  [Install]
> >  WantedBy=multi-user.target
> > -
> > diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > b/meta-webserver/recipes-httpd/nginx/nginx.inc index fe51ca0..334a6d8
> > 100644
> > --- a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > +++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
> > @@ -73,8 +73,8 @@ do_install () {
> >       rm -fr ${D}${localstatedir}/run ${D}/run
> >       if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true',
> 'false',
> > d)}; then install -d ${D}${sysconfdir}/tmpfiles.d
> > -             echo "d /run/${BPN} - - - -" \
> > -                  > ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
> Don't remove the /run/nginx directory, please
>
> > +             echo "d /${localstatedir}/log/${BPN} 0755 root root -" \
> > +                     >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
> >       fi
> >       install -d ${D}${sysconfdir}/${BPN}
> >       ln -snf ${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
> > @@ -90,6 +90,7 @@ do_install () {
> >       install -d ${D}${sysconfdir}/nginx
> >       install -m 0644 ${WORKDIR}/nginx.conf
> ${D}${sysconfdir}/nginx/nginx.conf
> >       sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/nginx/nginx.
> conf
> > +     sed -i 's/^user.*/user ${NGINX_USER};/g'
> > ${D}${sysconfdir}/nginx/nginx.conf install -d
> > ${D}${sysconfdir}/nginx/sites-enabled
> >
> >       install -d ${D}${sysconfdir}/default/volatiles
> This is missing from the end, since the unit file refers to SBINDIR now,
> and
> no BASE_SBINDIR.
>
> @@ -101,7 +104,7 @@ do_install () {
>              install -m 0644 ${WORKDIR}/nginx.service
> ${D}${systemd_unitdir}/
> system/
>              sed -i -e 's, at SYSCONFDIR@,${sysconfdir},g' \
>                      -e 's, at LOCALSTATEDIR@,${localstatedir},g' \
> -                    -e 's, at BASEBINDIR@,${base_bindir},g' \
> +                    -e 's, at SBINDIR@,${sbindir},g' \
>                      ${D}${systemd_unitdir}/system/nginx.service
>          fi
>  }
>
>
>



More information about the Openembedded-devel mailing list