From d4d809e10b81c2facf12a2206bd210fc93037da5 Mon Sep 17 00:00:00 2001
From: Thomas Owen James <tom.james@cern.ch>
Date: Mon, 22 Aug 2022 16:12:30 +0200
Subject: [PATCH] Update fileMover.py with path for lustre

---
 init.d/sc-filemover.service | 15 +++++++
 scripts/fileMover.py        | 10 ++---
 scripts/runFileMover.sh     |  6 +++
 scripts/scdaqrpm.sh         | 81 ++++++++++++++++++++++++++++---------
 4 files changed, 86 insertions(+), 26 deletions(-)
 create mode 100644 init.d/sc-filemover.service
 create mode 100755 scripts/runFileMover.sh

diff --git a/init.d/sc-filemover.service b/init.d/sc-filemover.service
new file mode 100644
index 00000000..29198ff8
--- /dev/null
+++ b/init.d/sc-filemover.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Wrapper script to run scouting filemover
+
+[Service]
+Type=simple
+PIDFile=/var/log/sc-filemover/pid
+ExecStart=/opt/sc-filemover/scripts/runFileMover.sh
+User=scouter
+Group=scouter
+WorkingDirectory=/opt/sc-filemover/scripts
+Restart=always
+RestartSec=10
+
+[Install]
+WantedBy=multi-user.target
diff --git a/scripts/fileMover.py b/scripts/fileMover.py
index 340c9ec6..37cb7890 100755
--- a/scripts/fileMover.py
+++ b/scripts/fileMover.py
@@ -16,13 +16,9 @@ if __name__ == "__main__":
             for f in onlyfiles:
                 full_filename = join('/fff/ramdisk/scdaq', f)
                 outfile = f+'.bz2'
-
-                if f[7:10] == 'GMT':
-                    run_number = f[10:16]
-                elif f[7:11] == 'CALO':
-                    run_number = f[11:17]
-                else:
-                    run_number = '000000'
+		name_without_extension = f.split(".")[0]
+		subsystem=name_without_extension.split("_")[1]
+		run_number=name_without_extension.split("_")[2]
 
                 dest_path = join('/store/lustre/l1scout/scdaq/',run_number)
 
diff --git a/scripts/runFileMover.sh b/scripts/runFileMover.sh
new file mode 100755
index 00000000..f6c6f31d
--- /dev/null
+++ b/scripts/runFileMover.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+# This script will start Scouting Data-Taking Software
+#
+
+sudo python fileMover.py
diff --git a/scripts/scdaqrpm.sh b/scripts/scdaqrpm.sh
index 88561340..147fd4b2 100755
--- a/scripts/scdaqrpm.sh
+++ b/scripts/scdaqrpm.sh
@@ -87,9 +87,7 @@ for ((i = 0; i < ${NLINES}; i++)); do
 done
 
 PACKAGENAME="scdaq"
-
-# set the RPM build architecture
-#BUILD_ARCH=$(uname -i)      # "i386" for SLC4, "x86_64" for SLC5
+PACKAGENAMEFILEMOVER="sc-filemover"
 
 cd $SCRIPTDIR/..
 BASEDIR=$PWD
@@ -97,12 +95,68 @@ BASEDIR=$PWD
 # create a build area
 echo "removing old build area"
 rm -rf /tmp/$PACKAGENAME-build-tmp
+rm -rf /tmp/$PACKAGENAMEFILEMOVER-build-tmp
 echo "creating new build area"
 mkdir /tmp/$PACKAGENAME-build-tmp
+mkdir /tmp/$PACKAGENAMEFILEMOVER-build-tmp
+cd /tmp/$PACKAGENAMEFILEMOVER-build-tmp
+TOPDIR=$PWD
+echo "working in $PWD"
+
+
+# we are done here, write the specs and make the rpm
+cat >sc-filemover.spec <<EOF
+Name: $PACKAGENAMEFILEMOVER$pkgsuffix
+Version: $VER
+Release: $REL
+Summary: L1 Scouting DAQ filemover
+License: gpl
+Group: CMS/L1Scouting
+Packager: scouter
+Source: none
+%define _tmppath $TOPDIR/sc-filemover-build
+BuildRoot: %{_tmppath}
+BuildArch: $BUILD_ARCH
+AutoReqProv: no
+Provides:/opt/sc-filemover
+
+%description
+scouting daq filemover
+
+%prep
+cp -R $BASEDIR/scripts SOURCES/
+
+%install
+cd \$RPM_BUILD_ROOT
+echo "Creating directories"
+mkdir -p opt/sc-filemover
+mkdir -p etc/sc-filemover
+mkdir -p etc/logrotate.d
+mkdir -p usr/lib/systemd/system
+mkdir -p etc/init.d
+cp $BASEDIR/init.d/sc-filemover.service usr/lib/systemd/system/sc-filemover.service
+cp -R $BASEDIR/scripts opt/sc-filemover
+
+%preun
+if [ \$1 == 0 ]; then
+  /usr/bin/systemctl stop sc-filemover || true
+  /usr/bin/systemctl disable sc-filemover || true
+  /usr/bin/systemctl stop sc-filemover || true
+  /usr/bin/systemctl disable sc-filemover || true
+fi
+
+%files
+%defattr(-, root, root, -)
+/opt/sc-filemover/
+%attr( 644 ,root, root) /usr/lib/systemd/system/sc-filemover.service
+
+EOF
+mkdir -p RPMBUILDFILEMOVER/{RPMS/{noarch},SPECS,BUILD,SOURCES,SRPMS}
+rpmbuild --define "_topdir $(pwd)/RPMBUILDFILEMOVER" -bb sc-filemover.spec
+
 cd /tmp/$PACKAGENAME-build-tmp
 TOPDIR=$PWD
 echo "working in $PWD"
-#ls
 
 # we are done here, write the specs and make the rpm
 cat >scoutdaq.spec <<EOF
@@ -155,19 +209,15 @@ mkdir -p opt/scdaq
 mkdir -p etc/scdaq
 mkdir -p etc/logrotate.d
 mkdir -p usr/lib/systemd/system
-#mkdir -p %{buildroot}/usr/lib/systemd/system 
 mkdir -p etc/init.d
-#mkdir -p %{buildroot}/opt/scdaq/init.d
 
 echo "Copying files to their destination"
-cp $BASEDIR/init.d/runSCdaq.service      usr/lib/systemd/system/runSCdaq.service
+cp $BASEDIR/init.d/runSCdaq.service usr/lib/systemd/system/runSCdaq.service
 cp $BASEDIR/init.d/scoutboardResetServer.service usr/lib/systemd/system/scoutboardResetServer.service
-cp -R $BASEDIR/*                    opt/scdaq
+cp -R $BASEDIR/* opt/scdaq
 pwd
 cp $TOPDIR/RPMBUILD/BUILD/SOURCES/scdaq opt/scdaq/bin/
-cp -R $BASEDIR/etc/scdaq/scdaq.conf        etc/scdaq/
-#cp -R $BASEDIR/etc/logrotate.d/scdaq etc/logrotate.d/
-#rm -rf opt/hltd/init.d
+cp -R $BASEDIR/etc/scdaq/scdaq.conf etc/scdaq/
 
 #touch opt/scdaq/scratch/new-version
 
@@ -175,11 +225,8 @@ echo "Deleting unnecessary files"
 rm -rf opt/hltd/{bin,rpm,lib}
 rm -rf opt/hltd/scripts/paramcache*
 rm -rf opt/hltd/scripts/*rpm.sh
-#rm -rf opt/hltd/scripts/postinstall.sh
-
 
 %post
-#/opt/scdaq/postinstall.sh
 systemctl daemon-reload
 
 %files
@@ -189,12 +236,8 @@ systemctl daemon-reload
 %defattr(-, root, root, -)
 /opt/scdaq/
 %config(noreplace) /etc/scdaq/scdaq.conf
-#/etc/logrotate.d/scdaq
 %attr( 644 ,root, root) /usr/lib/systemd/system/runSCdaq.service
 %attr( 644 ,root, root) /usr/lib/systemd/system/scoutboardResetServer.service
-#%attr( 755 ,root, root) /opt/scdaq/init.d/
-#%attr( 755 ,root, root) /opt/scdaq/init.d/
-
 
 %preun
 if [ \$1 == 0 ]; then
@@ -203,7 +246,7 @@ if [ \$1 == 0 ]; then
   /usr/bin/systemctl stop scoutboardResetServer || true
   /usr/bin/systemctl disable scoutboardResetServer || true
 fi
+
 EOF
 mkdir -p RPMBUILD/{RPMS/{noarch},SPECS,BUILD,SOURCES,SRPMS}
 rpmbuild --define "_topdir $(pwd)/RPMBUILD" -bb scoutdaq.spec
-#rm -rf patch-cmssw-tmp
-- 
GitLab