def __removeStorageDirectory(self, directory, storageElement):
        """ wipe out all contents from :directory: at :storageElement:

    :param self: self reference
    :param str directory: path
    :param str storageElement: SE name
    """
        self.log.info('Removing the contents of %s at %s' %
                      (directory, storageElement))

        se = StorageElement(storageElement)

        res = returnSingleResult(se.exists(directory))
        if not res['OK']:
            self.log.error("Failed to obtain existance of directory",
                           res['Message'])
            return res
        exists = res['Value']
        if not exists:
            self.log.info("The directory %s does not exist at %s " %
                          (directory, storageElement))
            return S_OK()
        res = returnSingleResult(se.removeDirectory(directory, recursive=True))
        if not res['OK']:
            self.log.error("Failed to remove storage directory",
                           res['Message'])
            return res
        self.log.info(
            "Successfully removed %d files from %s at %s" %
            (res['Value']['FilesRemoved'], directory, storageElement))
        return S_OK()
  def __removeStorageDirectory( self, directory, storageElement ):
    """ wipe out all contents from :directory: at :storageElement:

    :param self: self reference
    :param str directory: path
    :param str storageElement: SE name
    """
    self.log.info( 'Removing the contents of %s at %s' % ( directory, storageElement ) )

    se = StorageElement( storageElement )

    res = returnSingleResult( se.exists( directory ) )
    if not res['OK']:
      self.log.error( "Failed to obtain existance of directory", res['Message'] )
      return res
    exists = res['Value']
    if not exists:
      self.log.info( "The directory %s does not exist at %s " % ( directory, storageElement ) )
      return S_OK()
    res = returnSingleResult( se.removeDirectory( directory, recursive = True ) )
    if not res['OK']:
      self.log.error( "Failed to remove storage directory", res['Message'] )
      return res
    self.log.info( "Successfully removed %d files from %s at %s" % ( res['Value']['FilesRemoved'],
                                                                     directory,
                                                                     storageElement ) )
    return S_OK()
Beispiel #3
0
class StorageElementTestCase( unittest.TestCase ):
  """ Base class for the StorageElement test cases
  """
  def setUp( self ):
    self.numberOfFiles = 1
    self.storageElement = StorageElement( storageElementToTest )
    self.localSourceFile = "/etc/group"
    self.localFileSize = getSize( self.localSourceFile )
    self.destDirectory = "/lhcb/test/unit-test/TestStorageElement"
    destinationDir = self.storageElement.getPfnForLfn( self.destDirectory )['Value']
    res = self.storageElement.createDirectory( destinationDir, singleDirectory = True )
    self.assert_( res['OK'] )

  def tearDown( self ):
    destinationDir = self.storageElement.getPfnForLfn( self.destDirectory )['Value']
    res = self.storageElement.removeDirectory( destinationDir, recursive = True, singleDirectory = True )
    self.assert_( res['OK'] )
class StorageElementTestCase( unittest.TestCase ):
  """ Base class for the StorageElement test cases
  """
  def setUp( self ):
    self.numberOfFiles = 1
    self.storageElement = StorageElement( storageElementToTest )
    self.localSourceFile = fileToTest
    self.localFileSize = getSize( self.localSourceFile )
    self.destDirectory = lfnDirToTest
    # destinationDir = returnSingleResult( self.storageElement.getURL( self.destDirectory ) )['Value']
    destinationDir = self.destDirectory
    res = self.storageElement.createDirectory( destinationDir )
    self.assert_( res['OK'] )

  def tearDown( self ):
    # destinationDir = returnSingleResult( self.storageElement.getURL( self.destDirectory ) )['Value']
    res = self.storageElement.removeDirectory( self.destDirectory, recursive = True )
    self.assert_( res['OK'] )
def removeStorageDirectoryFromSE( directory, storageElement ):
  """
  Delete directory on selected storage element
  """

  se = StorageElement( storageElement, False )
  res = returnSingleResult( se.exists( directory ) )

  if not res['OK']:
    return S_ERROR( "Failed to obtain existence of directory" + res['Message'] )

  exists = res['Value']
  if not exists:
    return S_OK( "The directory %s does not exist at %s " % ( directory, storageElement ) )

  res = returnSingleResult( se.removeDirectory( directory, recursive = True ) )
  if not res['OK']:
    return S_ERROR( "Failed to remove storage directory" + res['Message'] )

  return S_OK()
def removeStorageDirectoryFromSE( directory, storageElement ):
  """
  Delete directory on selected storage element
  """

  se = StorageElement( storageElement, False )
  res = returnSingleResult( se.exists( directory ) )

  if not res['OK']:
    return S_ERROR( "Failed to obtain existence of directory" + res['Message'] )

  exists = res['Value']
  if not exists:
    return S_OK( "The directory %s does not exist at %s " % ( directory, storageElement ) )

  res = returnSingleResult( se.removeDirectory( directory, recursive = True ) )
  if not res['OK']:
    return S_ERROR( "Failed to remove storage directory" + res['Message'] )

  return S_OK()
Beispiel #7
0
def removeStorageDirectoryFromSE(directory, storageElement):
    """
    Delete directory on selected storage element
    """
    from DIRAC.Resources.Storage.StorageElement import StorageElement

    se = StorageElement(storageElement, False)
    res = returnSingleResult(se.exists(directory))

    if not res["OK"]:
        return S_ERROR("Failed to obtain existence of directory" + res["Message"])

    exists = res["Value"]
    if not exists:
        return S_OK("The directory %s does not exist at %s " % (directory, storageElement))

    res = returnSingleResult(se.removeDirectory(directory, recursive=True))
    if not res["OK"]:
        return S_ERROR("Failed to remove storage directory" + res["Message"])

    return S_OK()
Beispiel #8
0
class StorageElementTestCase(unittest.TestCase):
    """ Base class for the StorageElement test cases
  """
    def setUp(self):
        self.numberOfFiles = 1
        self.storageElement = StorageElement(storageElementToTest)
        self.localSourceFile = "/etc/group"
        self.localFileSize = getSize(self.localSourceFile)
        self.destDirectory = "/lhcb/test/unit-test/TestStorageElement"
        destinationDir = returnSingleResult(
            self.storageElement.getPfnForLfn(self.destDirectory))
        res = self.storageElement.createDirectory(destinationDir,
                                                  singleDirectory=True)
        self.assert_(res['OK'])

    def tearDown(self):
        destinationDir = returnSingleResult(
            self.storageElement.getPfnForLfn(self.destDirectory))
        res = self.storageElement.removeDirectory(destinationDir,
                                                  recursive=True,
                                                  singleDirectory=True)
        self.assert_(res['OK'])
  def __removeStorageDirectory( self, directory, storageElement ):
    """ wipe out all contents from :directory: at :storageElement:

    :param self: self reference
    :param str directory: path
    :param str storageElement: SE name
    """
    self.log.info( 'Removing the contents of %s at %s' % ( directory, storageElement ) )

    se = StorageElement( storageElement )

    res = se.getPfnForLfn( [directory] )
    if not res['OK']:
      self.log.error( "Failed to get PFN for directory", res['Message'] )
      return res
    if directory in res['Value']['Failed']:
      self.log.verbose( 'Failed to obtain directory PFN from LFN', '%s %s' % ( directory, res['Value']['Failed'][directory] ) )
      return S_ERROR( 'Failed to obtain directory PFN from LFNs' )
    storageDirectory = res['Value']['Successful'][directory]

    res = Utils.executeSingleFileOrDirWrapper( se.exists( storageDirectory ) )
    if not res['OK']:
      self.log.error( "Failed to obtain existance of directory", res['Message'] )
      return res
    exists = res['Value']
    if not exists:
      self.log.info( "The directory %s does not exist at %s " % ( directory, storageElement ) )
      return S_OK()
    res = Utils.executeSingleFileOrDirWrapper( se.removeDirectory( storageDirectory, recursive = True ) )
    if not res['OK']:
      self.log.error( "Failed to remove storage directory", res['Message'] )
      return res
    self.log.info( "Successfully removed %d files from %s at %s" % ( res['Value']['FilesRemoved'],
                                                                     directory,
                                                                     storageElement ) )
    return S_OK()