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