def main(): Script.parseCommandLine() args = Script.getPositionalArgs() if len(args) != 1: Script.showHelp(exitCode=1) inputFileName = args[0] if os.path.exists(inputFileName): lfns = [lfn.strip().split()[0] for lfn in sorted(open(inputFileName, 'r').read().splitlines())] else: lfns = [inputFileName] from DIRAC.DataManagementSystem.Client.DataManager import DataManager dm = DataManager() retVal = 0 for lfn in [lfn for lfn in lfns if lfn]: gLogger.notice("Cleaning directory %r ... " % lfn) result = dm.cleanLogicalDirectory(lfn) if not result['OK']: gLogger.error('Failed to clean directory', result['Message']) retVal = -1 else: if not result['Value']['Failed']: gLogger.notice('OK') else: for folder, message in result['Value']['Failed'].items(): gLogger.error('Failed to clean folder', "%r: %s" % (folder, message)) retVal = -1 DIRACExit(retVal)
def removeOutputData(baseDir, logLevel="INFO"): gLogger.setLevel(logLevel) res = getProxyInfo(False, False) if not res["OK"]: gLogger.error("Failed to get client proxy information.", res["Message"]) return {"OK": False, "Message": "Failed to get client proxy information: %s" % str(res["Message"]), "RC": 71} # ######################################################################################################## # rm = DataManager() try: result = rm.cleanLogicalDirectory(baseDir) except KeyError, ke: return {"OK": False, "Message": "Caught key error, full stacktrace below\n%s" % str(ke), "RC": 137}
def main(): # Registering arguments will automatically add their description to the help menu Script.registerArgument(("LocalFile: Path to local file containing LFNs", "LFN: Logical File Name")) Script.parseCommandLine() # parseCommandLine show help when mandatory arguments are not specified or incorrect argument inputFileName = Script.getPositionalArgs(group=True) if os.path.exists(inputFileName): lfns = [ lfn.strip().split()[0] for lfn in sorted(open(inputFileName, "r").read().splitlines()) ] else: lfns = [inputFileName] from DIRAC.DataManagementSystem.Client.DataManager import DataManager dm = DataManager() retVal = 0 for lfn in [lfn for lfn in lfns if lfn]: gLogger.notice("Cleaning directory %r ... " % lfn) result = dm.cleanLogicalDirectory(lfn) if not result["OK"]: gLogger.error("Failed to clean directory", result["Message"]) retVal = -1 else: if not result["Value"]["Failed"]: gLogger.notice("OK") else: for folder, message in result["Value"]["Failed"].items(): gLogger.error("Failed to clean folder", "%r: %s" % (folder, message)) retVal = -1 DIRACExit(retVal)
import sys,os from DIRAC.Core.Utilities.List import sortList,randomize if len(sys.argv) < 2: Script.showHelp() DIRACExit( -1 ) else: inputFileName = sys.argv[1] if os.path.exists(inputFileName): inputFile = open(inputFileName,'r') string = inputFile.read() lfns = sortList(string.splitlines(),True) inputFile.close() else: lfns = [inputFileName] from DIRAC.DataManagementSystem.Client.DataManager import DataManager dm = DataManager() for lfn in sortList(lfns): lfn = lfn.strip() if not lfn: continue print "Cleaning directory %s ... " % lfn, sys.stdout.flush() result = dm.cleanLogicalDirectory( lfn ) if result['OK']: print 'OK' else: print "ERROR: %s" % result['Message']
inputFileName = args[0] if os.path.exists(inputFileName): lfns = [ lfn.strip().split()[0] for lfn in sorted(open(inputFileName, 'r').read().splitlines()) ] else: lfns = [inputFileName] from DIRAC.DataManagementSystem.Client.DataManager import DataManager dm = DataManager() retVal = 0 for lfn in [lfn for lfn in lfns if lfn]: gLogger.notice("Cleaning directory %r ... " % lfn) result = dm.cleanLogicalDirectory(lfn) if not result['OK']: gLogger.error('Failed to clean directory', result['Message']) retVal = -1 else: if not result['Value']['Failed']: gLogger.notice('OK') else: for folder, message in result['Value']['Failed'].items(): gLogger.error('Failed to clean folder', "%r: %s" % (folder, message)) retVal = -1 DIRACExit(retVal)