Esempio n. 1
0
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)
Esempio n. 2
0
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}
Esempio n. 3
0
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)