From 98ff91f39de9e7830d2d3d085482d0c1362e40e5 Mon Sep 17 00:00:00 2001 From: John Malconian Date: Thu, 26 Oct 2023 19:01:54 +0000 Subject: [PATCH 1/3] Add rhel/centos 9/systemd support --- pazpar2.spec | 19 +++++----- rpm/pazpar2.init | 82 ------------------------------------------- rpm/pazpar2.logrotate | 2 +- rpm/pazpar2.service | 18 ++++++++++ rpm/pazpar2.sysconfig | 4 +++ 5 files changed, 34 insertions(+), 91 deletions(-) delete mode 100755 rpm/pazpar2.init create mode 100644 rpm/pazpar2.service create mode 100644 rpm/pazpar2.sysconfig diff --git a/pazpar2.spec b/pazpar2.spec index c4343445..a03d72ee 100644 --- a/pazpar2.spec +++ b/pazpar2.spec @@ -35,15 +35,15 @@ for f in /usr/share/pazpar2/xsl/*.xsl; do fi done if [ $1 = 1 ]; then - /sbin/chkconfig --add pazpar2 - /sbin/service pazpar2 start > /dev/null 2>&1 + /usr/bin/systemctl daemon-reload > /dev/null 2>&1 + /usr/bin/systemctl enable pazpar2 > /dev/null 2>&1 + /usr/bin/systemctl start pazpar2 > /dev/null 2>&1 else - /sbin/service pazpar2 restart > /dev/null 2>&1 + /usr/bin/systemctl restart pazpar2 > /dev/null 2>&1 fi %preun if [ $1 = 0 ]; then - /sbin/service pazpar2 stop > /dev/null 2>&1 - /sbin/chkconfig --del pazpar2 + /usr/bin/systemctl stop pazpar2 > /dev/null 2>&1 fi %description -n pazpar2-js @@ -104,8 +104,10 @@ cp etc/settings/*.xml ${RPM_BUILD_ROOT}/etc/pazpar2/settings/ cp -r etc/settings/mkc ${RPM_BUILD_ROOT}/etc/pazpar2/settings mkdir -p ${RPM_BUILD_ROOT}/usr/share/pazpar2/xsl cp etc/xsl/*.xsl ${RPM_BUILD_ROOT}/usr/share/pazpar2/xsl -mkdir -p ${RPM_BUILD_ROOT}/etc/rc.d/init.d -install -m755 rpm/pazpar2.init ${RPM_BUILD_ROOT}/etc/rc.d/init.d/pazpar2 +mkdir -p ${RPM_BUILD_ROOT}/etc/systemd/system +install -m755 rpm/pazpar2.service ${RPM_BUILD_ROOT}/etc/systemd/system/pazpar2.service +mkdir -p ${RPM_BUILD_ROOT}/etc/sysconfig +install -m644 rpm/pazpar2.sysconfig ${RPM_BUILD_ROOT}/etc/sysconfig/pazpar2 echo "Alias /pazpar2 /usr/share/pazpar2" >${RPM_BUILD_ROOT}/etc/pazpar2/ap2pazpar2-js.cfg mkdir -p ${RPM_BUILD_ROOT}/etc/logrotate.d install -m644 rpm/pazpar2.logrotate ${RPM_BUILD_ROOT}/etc/logrotate.d/pazpar2 @@ -127,7 +129,8 @@ rm -fr ${RPM_BUILD_ROOT} %config %{_sysconfdir}/pazpar2/settings/*.xml %config %{_sysconfdir}/pazpar2/settings/*/*.xml %config %{_sysconfdir}/pazpar2/services-available/*.xml -%config %{_sysconfdir}/rc.d/init.d/pazpar2 +%config %{_sysconfdir}/sysconfig/pazpar2 +%config %{_sysconfdir}/systemd/system/pazpar2.service %config(noreplace) /etc/logrotate.d/pazpar2 %{_mandir}/man1/pazpar2* %{_mandir}/man5/pazpar2* diff --git a/rpm/pazpar2.init b/rpm/pazpar2.init deleted file mode 100755 index a77b7d11..00000000 --- a/rpm/pazpar2.init +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/bash -# -# pazpar2 Startup script for Pazpar2 -# -# chkconfig: 2345 85 15 -# description: Pazpar2 Metasearcher -# processname: pazpar2 -# config: /etc/pazpar2/server.xml -# config: /etc/sysconfig/pazpar2 -# pidfile: /var/run/pazpar2.pid - -# Source function library. -OPTIONS="-u nobody -l /var/log/pazpar2.log -f /etc/pazpar2/server.xml" -. /etc/rc.d/init.d/functions - -if [ -f /etc/sysconfig/pazpar2 ]; then - . /etc/sysconfig/pazpar2 -fi - -# Path to the apachectl script, server binary, and short-form for messages. -DAEMON=${DAEMON-/usr/sbin/pazpar2} -prog=pazpar2 -pidfile=${PIDFILE-/var/run/pazpar2.pid} -lockfile=${LOCKFILE-/var/lock/subsys/pazpar2} -RETVAL=0 - -start() { - echo -n $"Starting $prog: " - daemon --pidfile=${pidfile} $DAEMON $OPTIONS -D -p ${pidfile} - RETVAL=$? - echo - [ $RETVAL = 0 ] && touch ${lockfile} - return $RETVAL -} - -stop() { - echo -n $"Stopping $prog: " - killproc -p ${pidfile} -d 10 $DAEMON - RETVAL=$? - echo - [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile} -} -reload() { - stop - start -} - -# See how we were called. -case "$1" in - start) - start - ;; - stop) - stop - ;; - status) - status -p ${pidfile} $DAEMON - RETVAL=$? - ;; - restart) - stop - start - ;; - condrestart) - if [ -f ${pidfile} ] ; then - stop - start - fi - ;; - reload) - reload - ;; - configtest) - $DAEMON $OPTIONS -t - RETVAL=$? - ;; - *) - echo $"Usage: $prog {start|stop|restart|help|configtest}" - exit 1 -esac - -exit $RETVAL diff --git a/rpm/pazpar2.logrotate b/rpm/pazpar2.logrotate index b2bd6fba..93fd2b83 100644 --- a/rpm/pazpar2.logrotate +++ b/rpm/pazpar2.logrotate @@ -7,7 +7,7 @@ notifempty postrotate if [ -f /var/run/pazpar2.pid ]; then - /sbin/service pazpar2 restart > /dev/null + /user/bin/systemctl restart pazpar2 > /dev/null fi endscript } diff --git a/rpm/pazpar2.service b/rpm/pazpar2.service new file mode 100644 index 00000000..660ca60e --- /dev/null +++ b/rpm/pazpar2.service @@ -0,0 +1,18 @@ +# Pazpar2 systemd-style configuration + +[Unit] +Description=Pazpar2 Metasearcher +Documentation=man:pazpar2(8) +After=network.target + +[Service] +Type=simple +EnvironmentFile=/etc/sysconfig/pazpar2 +Restart=on-abort +KillMode=process +PIDFile=${PP2_PID_FILE} +ExecStart=/bin/bash -ce "exec /usr/sbin/pazpar2 ${PP2_OPTIONS}" + +[Install] +WantedBy=multi-user.target + diff --git a/rpm/pazpar2.sysconfig b/rpm/pazpar2.sysconfig new file mode 100644 index 00000000..ae3f60dd --- /dev/null +++ b/rpm/pazpar2.sysconfig @@ -0,0 +1,4 @@ +PP2_USER=nobody +PP2_LOG=/var/log/pazpar2 +PP2_PID_FILE=/var/run/pazpar2.pid +PP2_OPTIONS="-u ${PP2_USER} -l ${PP2_LOG} -f /etc/pazpar2/server.xml -p $PP2_PID_FILE" From 937d226e962e186e751b9ca4809807d986ba68b6 Mon Sep 17 00:00:00 2001 From: John Malconian Date: Tue, 31 Oct 2023 19:35:13 +0000 Subject: [PATCH 2/3] add centos9 to IDMETA --- IDMETA | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IDMETA b/IDMETA index 9db4ba64..808dbfa4 100644 --- a/IDMETA +++ b/IDMETA @@ -1,4 +1,4 @@ DEBIAN_DIST="bullseye buster stretch" UBUNTU_DIST="jammy focal bionic xenial trusty" -CENTOS_DIST="centos7 centos8" +CENTOS_DIST="centos7 centos8 centos9" VERSION=1.14.1 From d2fde3dea285ce2d863d1a01c2ca02c25b111136 Mon Sep 17 00:00:00 2001 From: David Crossley Date: Mon, 12 Feb 2024 16:57:59 +1100 Subject: [PATCH 3/3] Use actions/checkout v4 DEVOPS-2662 --- .github/workflows/build-pazpar2.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-pazpar2.yaml b/.github/workflows/build-pazpar2.yaml index 30ae6674..a78f8443 100644 --- a/.github/workflows/build-pazpar2.yaml +++ b/.github/workflows/build-pazpar2.yaml @@ -5,11 +5,11 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 1 - name: clone yaz - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: indexdata/yaz path: yaz