~alpine/aports

This thread contains a patchset. You're looking at the original emails, but you may wish to use the patch review UI. Review patch

[alpine-aports] [PATCH] testing/rspamd: cleaning and refining after initial commit

Details
Message ID
<1453381855-14026-1-git-send-email-valery.kartel@gmail.com>
Sender timestamp
1453381855
DKIM signature
missing
Download raw message
Patch: +74 -33
---
 testing/rspamd/APKBUILD           | 73 +++++++++++++++++++++++++--------------
 testing/rspamd/rspamd.confd       | 17 +++++++++
 testing/rspamd/rspamd.initd       | 15 ++++----
 testing/rspamd/rspamd.pre-install |  2 +-
 4 files changed, 74 insertions(+), 33 deletions(-)
 create mode 100644 testing/rspamd/rspamd.confd

diff --git a/testing/rspamd/APKBUILD b/testing/rspamd/APKBUILD
index 0a92872..c04f33b 100644
--- a/testing/rspamd/APKBUILD
+++ b/testing/rspamd/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Valery Kartel <valery.kartel@gmail.com>
pkgname=rspamd
pkgver=1.1.0
pkgrel=0
pkgdesc="Rapid spam filtering system."
pkgrel=1
pkgdesc="Rapid spam filtering system"
url="https://rspamd.com"
arch="all"
license="BSD-2-clause"
@@ -14,10 +14,11 @@ depends_dev=""
makedepends="$depends_dev cmake openssl-dev libevent-dev glib-dev gmime-dev
	luajit-dev sqlite-dev hiredis-dev file-dev pcre-dev"
install="$pkgname.pre-install"
subpackages="$pkgname-doc $pkgname-web"
subpackages="$pkgname-doc $pkgname-web $pkgname-client $pkgname-contrib"
source="https://rspamd.com/downloads/$pkgname-$pkgver.tar.xz
	$pkgname.logrotated
	$pkgname.initd
	$pkgname.confd
	$pkgname.conf
	$pkgname.worker_normal
	$pkgname.worker_controller
@@ -29,63 +30,85 @@ build() {
	cd "$_builddir"
	cmake CMakeLists.txt \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DEXAMPLESDIR=/usr/share/doc/rspamd/examples \
		-DCONFDIR=/etc/rspamd \
		-DDBDIR=/var/lib/$pkgname \
		-DCONFDIR=/etc/$pkgname \
		-DRUNDIR=/run/$pkgname \
		-DLOGDIR=/var/log/$pkgname \
		-DENABLE_HIREDIS=ON \
		-DRSPAMD_GROUP=$pkggroups \
		-DRSPAMD_USER=$pkgusers \
		-DRSPAMD_GROUP=$pkggroups \
		-DENABLE_HIREDIS=ON \
		-DINSTALL_EXAMPLES=ON \
	|| return 1
	make || return 1
}

package() {
	cd "$_builddir"
	make DESTDIR="$pkgdir" INSTALLDIRS=vendor install || return 1
	for file in rspamd rspamc rspamadm; do
		mv "$pkgdir"/usr/bin/$file-$pkgver "$pkgdir"/usr/bin/$file
	done
	find "$pkgdir"/usr/bin -type f -exec mv {} $(basename {} -$pkgver) \;
	mkdir "$pkgdir"/usr/sbin "$pkgdir"/usr/share/doc/$pkgname/www
	mv "$pkgdir"/usr/bin/rspamd "$pkgdir"/usr/sbin/
	mv "$pkgdir"/usr/share/$pkgname/www/README.md \
		"$pkgdir"/usr/share/$pkgname/www/plugins.txt \
		"$pkgdir"/usr/share/doc/$pkgname/www
	rm -fr "$pkgdir"/etc/$pkgname/rspamd.* "$pkgdir"/etc/$pkgname/worker-*
	install -m644 "$srcdir"/$pkgname.conf "$pkgdir"/etc/$pkgname/$pkgname.conf
	make DESTDIR="$pkgdir" install || return 1
	find "$pkgdir"/usr/bin -type l -delete
	rm -fr "$pkgdir"/etc/$pkgname/rspamd* "$pkgdir"/etc/$pkgname/worker*

	sed -i -E 's~DBDIR(/rspamd.sock)~RUNDIR\1~' "$pkgdir"/etc/$pkgname/options.inc
	install -Dm644 "$srcdir"/$pkgname.conf "$pkgdir"/etc/$pkgname/$pkgname.conf
	install -Dm644 "$srcdir"/$pkgname.worker_normal "$pkgdir"/etc/$pkgname/worker.d/normal.conf

	install -Dm644 "$srcdir"/$pkgname.logrotated "$pkgdir"/etc/logrotate.d/$pkgname
	install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
	install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname

	install -dm750 -o $pkgusers -g $pkggroups "$pkgdir"/var/lib/$pkgname
	install -dm750 -g $pkggroups "$pkgdir"/var/log/$pkgname

	mkdir "$pkgdir"/usr/sbin
	mv "$pkgdir"/usr/bin/rspamd-$pkgver "$pkgdir"/usr/sbin/rspamd
	mv "$pkgdir"/usr/bin/rspamadm-$pkgver "$pkgdir"/usr/bin/rspamadm

	mv "$pkgdir"/usr/share/examples "$pkgdir"/usr/share/doc
	mv "$pkgdir"/usr/share/$pkgname/www/README.md \
		"$pkgdir"/usr/share/$pkgname/www/plugins.txt \
		"$pkgdir"/usr/share/doc/$pkgname
}

web() {
	arch="noarch"
	license="MIT"
	depends="$pkgname"
	pkgdesc="$pkgdesc (web control interface)"
	mkdir -p "$subpkgdir"/usr/share/$pkgname
	mkdir -p "$subpkgdir"/usr/share/$pkgname "$subpkgdir"/etc/$pkgname/worker.d
	mv "$pkgdir"/usr/share/$pkgname/www "$subpkgdir"/usr/share/$pkgname/
	install -Dm644 "$srcdir"/$pkgname.worker_controller "$subpkgdir"/etc/$pkgname/worker.d/controller.conf
}

client() {
	pkgdesc="$pkgdesc (console client)"
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/rspamc-$pkgver "$subpkgdir"/usr/bin/rspamc
}

contrib() {
	arch="noarch"
	pkgdesc="Some useful stuff to deploying rspamd to another apps"
	mkdir -p "$subpkgdir"/usr/share/$pkgname/contrib
	# Exim specific stuff
	cp -r "$_builddir"/contrib/exim "$subpkgdir"/usr/share/$pkgname/contrib/
}

md5sums="c14cc28bc346a3f12623e472ba508f43  rspamd-1.1.0.tar.xz
3fd4d0e28cb01224a786c0498266e9a6  rspamd.logrotated
cbf6a8191c7ce4b7c4fe481cad58f1a4  rspamd.initd
dba3145a52bee22d8ed1192dc44506ad  rspamd.initd
ecfea2a25b95727ae91c04001fbd3e46  rspamd.confd
a5f0967b3d9aa319909af7e1bfe998e1  rspamd.conf
74e334227e9244c419abd605787c090e  rspamd.worker_normal
03bd84228945261e2242564f9bf5f1ca  rspamd.worker_controller"
sha256sums="69db05150b4ba8304d24dd0f96c79b5d3792478373f0d6be6c92b51b1cf60ead  rspamd-1.1.0.tar.xz
cb02c8c041a0ace2e3c9e4fbf514038871b4444575c9022a75e661130db875fd  rspamd.logrotated
0e4d1ce24ce9ec0451f4498dcadc391721affc63be3c693564df29f9b23b0c7a  rspamd.initd
83acf26538826ce58039236660807cc87b9d4abc628fa6e2ddbb4201eac5424e  rspamd.initd
82be6a663af2e2333b0dfbbbfd05a9ff3d02e05c7e506235b1b0dbd9d0b72972  rspamd.confd
5a223efb12e962e0f3bfe9f6d08336c6074b0b2930b8da6a22fe6582142ee40c  rspamd.conf
7805103a2e11cf816e99dba7d67fdc584ece33d9ea3ef95f95f4fce91a34eb90  rspamd.worker_normal
f50663096866b35095f7a6754e3cfb0bab518645d61646703715cf43da5adf77  rspamd.worker_controller"
sha512sums="41a8fb49a10082b1dc97397ebb8ac81dd3f4912e9140dcb7c57c9e15f1e49cf472aa94570a2f802b82e3db8ab8a87dd6a63f7db7249da4d99473700535045256  rspamd-1.1.0.tar.xz
3b95882b1804d8dc6524a4c2cdf3f656b2f9bf5db6228b92d1acd539629070aead654c1f58937e1473e4f07340dc3de7b212f87b36143c5cb3fcb3b472a85f5a  rspamd.logrotated
f41f72ace36af2d55e4b900580953b72933cc9cd53213e0ff40439eeab45713ebe07cafa14e5ac7951b96e0984d875d507fd4adb8e1501f0954324118c0abf68  rspamd.initd
12b2a92126f911e29d5ace836404ca8170bc19181f3b61896726b0dea79b03bc3b9295d876b96a633a3b4a963646cf7bebfbe10489ad24f373d81fd5a84f21b1  rspamd.initd
0b73b159cec9a4a1d337fbb429814f78da23b55f72c9fb8a777ab5f06634206a4f9b25e587f8dbfa7c3242ac5501ebcc90b9a0e926adfd37e14a12ac4607fa62  rspamd.confd
90885bd8f9fcd47590eedf8f1f058df7c492005fc09058e99ee490e1730f4961909850ecf9e98723bfbd3cbe8df705f86a0de931dedb25bc66b246674f537a72  rspamd.conf
ddf1af03878ed2f4b1e735ecd9f931f1941adf7b2085aa7a40f3ef303fa5c59791d0d7462064c2ac652af2722b83acd4379f549d341cb62767e74edefb69ba9a  rspamd.worker_normal
932486ee517ca55534e93eb634badd9082a3952e25a66f98468c7b9c29ce4a26a5a96f465ee347dfd5443d330b1dd11b72680bc6ac04c2ebe45412f4432e8f62  rspamd.worker_controller"
diff --git a/testing/rspamd/rspamd.confd b/testing/rspamd/rspamd.confd
new file mode 100644
index 0000000..541ffff
--- /dev/null
+++ b/testing/rspamd/rspamd.confd
@@ -0,0 +1,17 @@
# User to run rspamd workers
#user=rspamd

# Group to run rspamd workers
#group=rspamd

# Main config file
#cfgfile=/etc/rspamd/rspamd.conf

# PID file. Settings from config files are ignored
#pidfile=/run/rspamd/rspamd.pid

# Where to log startup configuration checking
# - /dev/null - silent (default)
# - /dev/tty - show output on curent terminal
# - /path/filename - append to specified logfile
#startuplog=/var/log/rspamd/startup.log
diff --git a/testing/rspamd/rspamd.initd b/testing/rspamd/rspamd.initd
index 5189e49..0fd5b93 100644
--- a/testing/rspamd/rspamd.initd
+++ b/testing/rspamd/rspamd.initd
@@ -1,10 +1,12 @@
#!/sbin/openrc-run

description="Rapid spam filtering system"
command="/usr/sbin/rspamd"
command_args="-u rspamd -g rspamd"
user=${user:-rspamd}
group=${group:-rspamd}
cfgfile=${cfgfile:-/etc/rspamd/rspamd.conf}
pidfile="/run/rspamd/rspamd.pid"
pidfile=${pidfile:-/run/rspamd/rspamd.pid}
command=/usr/sbin/rspamd
command_args="-u $user -g $group -c $cfgfile -p $pidfile"
required_files="$cfgfile"
extra_started_commands="reload"
description_reload="Reload configuration"
@@ -16,14 +18,13 @@ depend() {

start_pre() {
	ebegin
	[ "$cfgfile" = "/etc/rspamd/rspamd.conf" ] || command_args="$command_args -c $cfgfile"
	checkpath --directory --mode 750 --owner rspamd:rspamd "${pidfile%/*}"
	$command $command_args -t &>/dev/null
	checkpath --directory --mode 750 --owner $user:$group ${pidfile%/*}
	$command $command_args -t >/dev/null 2>>${startuplog:-/dev/null}
	eend $?
}

reload() {
	ebegin "Reloading ${SVCNAME}"
	start-stop-daemon --signal HUP --pidfile ${pidfile}
	start-stop-daemon --signal HUP --pidfile $pidfile
	eend $?
}
diff --git a/testing/rspamd/rspamd.pre-install b/testing/rspamd/rspamd.pre-install
index db50214..7f00b36 100644
--- a/testing/rspamd/rspamd.pre-install
+++ b/testing/rspamd/rspamd.pre-install
@@ -1,6 +1,6 @@
#!/bin/sh

addgroup -S rspamd 2>/dev/null
adduser -h /var/lib/rspamd -g "rspamd spam filtering system" -s /bin/false -SDHG rspamd rspamd 2>/dev/null
adduser -h /var/lib/rspamd -g "rspamd" -s /bin/false -SDHG rspamd rspamd 2>/dev/null

exit 0
-- 
2.7.0



---
Unsubscribe:  alpine-aports+unsubscribe@lists.alpinelinux.org
Help:         alpine-aports+help@lists.alpinelinux.org
---
Reply to thread Export thread (mbox)