summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--PKGBUILD8
-rw-r--r--cellframe-node.asan.service23
2 files changed, 29 insertions, 2 deletions
diff --git a/PKGBUILD b/PKGBUILD
index ac42c1180c5d..c3e2c7b71df3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
pkgname=cellframe-node-debug
_pkgname=cellframe-node
pkgver=5.2.444
-pkgrel=1
+pkgrel=2
pkgdesc="Cellframe blockchain node with a powerful SDK"
arch=('x86_64' 'aarch64')
url="https://cellframe.net"
@@ -56,7 +56,11 @@ package() {
install -Dm 644 "$srcdir/$_pkgname.logrotate" "$pkgdir/etc/logrotate.d/$_pkgname"
- install -Dm 644 "$srcdir/$_pkgname.service" -t "$pkgdir/usr/lib/systemd/system"
+ if [ $DAP_ASAN ]; then
+ install -Dm 644 "$srcdir/$_pkgname.asan.service" "$pkgdir/usr/lib/systemd/system/$_pkgname.service"
+ else
+ install -Dm 644 "$srcdir/$_pkgname.service" -t "$pkgdir/usr/lib/systemd/system"
+ fi
install -Dm 644 "$srcdir/$_pkgname-logrotate.service" -t "$pkgdir/usr/lib/systemd/system"
diff --git a/cellframe-node.asan.service b/cellframe-node.asan.service
new file mode 100644
index 000000000000..5b8973ba5f5c
--- /dev/null
+++ b/cellframe-node.asan.service
@@ -0,0 +1,23 @@
+[Install]
+WantedBy=multi-user.target
+[Unit]
+Description=Cellframe Node
+After=network-online.target
+Wants=network-online.target
+
+[Service]
+WorkingDirectory=/opt/cellframe-node
+ExecStart=/opt/cellframe-node/bin/cellframe-node &
+ExecStop=/bin/kill -SIGTERM $MAINPID
+Restart=always
+User=root
+Group=root
+RestartSec=10
+LogNamespace=cellframe
+StandardOutput=null
+StandardError=journal
+CapabilityBoundingSet=CAP_NET_BIND_SERVICE CAP_IPC_LOCK CAP_KILL CAP_LEASE CAP_MKNOD CAP_NET_ADMIN CAP_NET_BROADCAST CAP_NET_RAW CAP_SYS_NICE CAP_SYS_RAWIO CAP_SYSLOG CAP_WAKE_ALARM CAP_SYS_RESOURCE CAP_DAC_READ_SEARCH
+Environment="ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:detect_invalid_pointer_pairs=2:debug=1:atexit=1:abort_on_error=1:log_path=asanlog.txt"
+
+[Install]
+WantedBy=multi-user.target