X-Original-To: alpine-aports@lists.alpinelinux.org Received: from newmail.tetrasec.net (unknown [172.21.74.12]) by lists.alpinelinux.org (Postfix) with ESMTP id 59A645C5088 for ; Mon, 27 Feb 2017 16:39:38 +0000 (GMT) Received: from ncopa-desktop.copa.dup.pw (15.63.200.37.customer.cdi.no [37.200.63.15]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: n@tanael.org) by newmail.tetrasec.net (Postfix) with ESMTPSA id 793455A07FE; Mon, 27 Feb 2017 16:39:37 +0000 (GMT) Date: Mon, 27 Feb 2017 17:39:32 +0100 From: Natanael Copa To: Valery Kartel Cc: alpine-aports@lists.alpinelinux.org Subject: Re: [alpine-aports] [PATCH v5] testing/rspamd: upgrade to 1.4.4 Message-ID: <20170227173932.457b9156@ncopa-desktop.copa.dup.pw> In-Reply-To: <20170227123945.22063-1-valery.kartel@gmail.com> References: <20170227123945.22063-1-valery.kartel@gmail.com> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.28; x86_64-alpine-linux-musl) X-Mailinglist: alpine-aports Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Mon, 27 Feb 2017 14:39:45 +0200 Valery Kartel wrote: > --- > v1 -> v2: add checkconfig command to init script > > v2 -> v3: fix checksums > > v3 -> v4: remade init-script with checkconfig sub > > v4 -> v5: remade init.d and conf.d to use unique RSPAMD_* vars > remade checkconfig to be a user-called command > --- > testing/rspamd/APKBUILD | 22 +++++----------------- > testing/rspamd/rspamd.confd | 15 ++++++++------- > testing/rspamd/rspamd.initd | 36 +++++++++++++++++++++++++----------- > 3 files changed, 38 insertions(+), 35 deletions(-) > > diff --git a/testing/rspamd/APKBUILD b/testing/rspamd/APKBUILD > index 85fc20a1b8..69c35c1707 100644 > --- a/testing/rspamd/APKBUILD > +++ b/testing/rspamd/APKBUILD > @@ -2,8 +2,8 @@ > # Contributor: Valery Kartel > # Contributor: Nathan Angelacos > pkgname=rspamd > -pkgver=1.4.3 > -pkgrel=1 > +pkgver=1.4.4 > +pkgrel=0 > pkgdesc="Fast, free and open-source spam filtering system" > url="https://rspamd.com" > arch="x86_64 x86 armhf" > @@ -106,21 +106,9 @@ utils() { > mv "$pkgdir"/usr/bin/${pkgname}-redirector "$subpkgdir"/usr/bin > } > > -md5sums="a64e00b906b7f3590e855be50106f99f rspamd-1.4.3.tar.xz > -c152c6a90f6ae9e5a7a1d137dfbc0305 rspamd.logrotated > -0656acc12dcce7cba232857a848d0390 rspamd.initd > -ab12f33ad8e12a7437fb5ea4a9c92eef rspamd.confd > -ff0bf4f1b1447ca401865369f91418f1 config.patch > -83f76787389649af63ea921f81cf35b3 cmakelists.patch" > -sha256sums="144cddc25ce8d8519b289d2c00d34b37c931f3c7293e2b0d16c408680021a1bf rspamd-1.4.3.tar.xz > -6c5e79e9052d957f3d0d634b2ae7a56bbc0901a5d6946dc991c92f19a72fce97 rspamd.logrotated > -5bcf68a72e0582859799cd335a14d48914e5291f4087327b3b42562ef64e2958 rspamd.initd > -fceba39a20755d48ef3838f7daa92ed9686a118c0a26f06bfe72cc7c15b2e384 rspamd.confd > -7e0adb4a2e7e8f806fc5fdae0c37e6948ed56e9d46d4eed0c681806decb90e49 config.patch > -d4bc7851bb32b49be98e3964aa9195033b586da27f7f3afa5ce12dfbeadd96b0 cmakelists.patch" > -sha512sums="bae86953d881be446f049384cc8bf8451b04619b461a7e2d571407d5af5f2547af8bc9db578e84190e8c55d01f9e32ea1d29e998daa2bbb2fac431ed50df27ca rspamd-1.4.3.tar.xz > +sha512sums="df2260de6585699a5b6692aa210647270b7132372ae6a2437f8532265018fe4db8270a8989ce0c0664cad17cbc281ae92f935c4f0974dc2f8da309e54c234b14 rspamd-1.4.4.tar.xz > 2efe28575c40d1fba84b189bb872860e744400db80dce2f6330be6c6287fb3f46e6511284729b957488bf40bcb9b0952e26df9934f5f138334bd2766075c45cb rspamd.logrotated > -e240983c2fd91d8061b17e35e83a75c56ac2c3625dbe07b83a2e89e3dbf69b57c675d01772b93968aa6b22d150d54d366f2fb4a0c6551b3cfdedc77d82e28652 rspamd.initd > -1320a752cbefe021079b3ed23e312231c39fc600baba7d8440c3e8bdd33ed673c8831b44a0c76788a8d905469e81088adf26cf245c09b4c2c4fdce7ff4219ee7 rspamd.confd > +3ffe0b57a0f62a1d4e6dbc701e68480a91bf161b337e63a8dc25e1b696951f1510f6f03d1d986875b73ba33db76f86504895b69bcaed7b32b026e6e6e4559df6 rspamd.initd > +e417dd825d1b4d03d115db037b2fdf2f48a35420ee7a9010d97167b6c31e88d6c0a15dd33b21d7d76856db0fdc5097c922fcdf1d8164d1e92ae377f7c5303947 rspamd.confd > 2089429e6f44f8204f31c87c565cdd7abcd51b3146397ba1b2fb23b1be6faf46fd8ec36718f194a3fc38ac1d38d7be9010a84ac4b49d7e1597706699538c607a config.patch > 99593c10ffb04c71a4c83c7522b41f12465a9862283685bbc2fff464fd84fcf8b4bc4a892419d31332c01f805c69dd7730f537c60248b92fee35acdc6633a644 cmakelists.patch" > diff --git a/testing/rspamd/rspamd.confd b/testing/rspamd/rspamd.confd > index 9b2cc4b34f..e804b2b642 100644 > --- a/testing/rspamd/rspamd.confd > +++ b/testing/rspamd/rspamd.confd > @@ -1,15 +1,16 @@ > # User and group to run rspamd workers > -#user=rspamd > -#group=rspamd > +#RSPAMD_USER=rspamd > +#RSPAMD_GROUP=rspamd > > -# Main config file > -#cfgfile=/etc/rspamd/rspamd.conf > +# Main config dir or file > +#RSPAMD_CONFDIR=/etc/rspamd > +#RSPAMD_CONFIG=/etc/rspamd/rspamd.conf > > # PID file. Settings from config files are ignored > -#pidfile=/run/rspamd/rspamd.pid > +#RSPAMD_PIDFILE=/run/$RC_SVCNAME/rspamd.pid > > # Where to log startup configuration checking > # - /dev/null - silent (default) > -# - /dev/tty - show output on curent terminal > +# - /dev/stdout - show output on curent terminal > # - /path/filename - append to specified logfile > -#startuplog=/var/log/rspamd/startup.log > +#RSPAMD_STARTUPLOG=/var/log/rspamd/startup.log > diff --git a/testing/rspamd/rspamd.initd b/testing/rspamd/rspamd.initd > index 93148ccb4b..0bffd00c26 100644 > --- a/testing/rspamd/rspamd.initd > +++ b/testing/rspamd/rspamd.initd > @@ -1,14 +1,19 @@ > #!/sbin/openrc-run > > description="Rapid spam filtering system" > -user=${user:-rspamd} > -group=${group:-rspamd} > -cfgfile=${cfgfile:-/etc/rspamd/rspamd.conf} > -pidfile=${pidfile:-/run/rspamd/rspamd.pid} > + > +: ${user:=${RSPAMD_USER:-rspamd}} > +: ${group:=${RSPAMD_GROUP:-rspamd}} > +: ${cfgdir:=${RSPAMD_CONFDIR:-/etc/rspamd}} > +: ${cfgfile:=${RSPAMD_CONFIG:-$cfgdir/rspamd.conf}} > +: ${pidfile:=${RSPAMD_PIDFILE:-/run/$RC_SVCNAME/rspamd.pid}} > + > command=/usr/sbin/rspamd > command_args="-u $user -g $group -c $cfgfile -p $pidfile" > required_files="$cfgfile" > +extra_commands="checkconfig" > extra_started_commands="reload reopen" > +description_checkconfig="Verify configuration" > description_reload="Reload configuration" > description_reopen="Reopen log files" > > @@ -17,21 +22,30 @@ depend() { > before mta > } > > +checkconfig() { > + if [ "$RC_CMD" = "checkconfig" ]; then > + startuplog=/dev/stderr > + ebegin "Checking $RC_SVCNAME config" > + fi > + $command $command_args -t >/dev/null 2>>${startuplog:=${RSPAMD_STARTUPLOG:-/dev/null}} > + local result=$? > + [ "$RC_CMD" = "checkconfig" ] || return $result > + eend $result > +} I don't like the "$RC_CMD" conditionals. Why can't we do the redirection in start_pre? checkconfig() { $command $command_args -t } start_pre() { ... checkconfig >/dev/null 2>>${startuplog:=${RSPAMD_STARTUPLOG:-/dev/null}} } > + > start_pre() { > - ebegin > - checkpath --directory --mode 750 --owner $user:$group ${pidfile%/*} > - $command $command_args -t >/dev/null 2>>${startuplog:-/dev/null} > - eend $? > + [ "$RC_CMD" = "start" ] && checkpath -d -m 750 -o $user:$group ${pidfile%/*} Why do you need to check if RC_CMD is "start"? Will this function ever run when its not "start"? -nc > + checkconfig > } > > reload() { > - ebegin "Reloading ${SVCNAME}" > - start-stop-daemon --signal HUP --pidfile $pidfile > + ebegin "Reloading $RC_SVCNAME config" > + checkconfig && start-stop-daemon --signal HUP --pidfile $pidfile > eend $? > } > > reopen() { > - ebegin "Reopening ${SVCNAME} log files" > + ebegin "Reopening $RC_SVCNAME log files" > start-stop-daemon --signal USR1 --pidfile $pidfile > eend $? > } --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---