def main(): # Registering arguments will automatically add their description to the help menu Script.registerArgument(["transID: transformation ID"]) _, args = Script.parseCommandLine() transIDs = [int(arg) for arg in args] from DIRAC.TransformationSystem.Agent.TransformationCleaningAgent import TransformationCleaningAgent agent = TransformationCleaningAgent( "Transformation/TransformationCleaningAgent", "Transformation/TransformationCleaningAgent", "dirac-transformation-remove-output", ) agent.initialize() for transID in transIDs: agent.removeTransformationOutput(transID)
def initialize(self): """ Standard initialize method for agents """ DiracTCAgent.initialize(self) self.directoryLocations = sorted( self.am_getOption('DirectoryLocations', self.directoryLocations)) self.archiveAfter = self.am_getOption('ArchiveAfter', self.archiveAfter) # days self.fileTypesToKeep = Operations().getValue( 'Transformations/FileTypesToKeep', self.fileTypesToKeep) self.bkClient = BookkeepingClient() self.transClient = TransformationClient() self.storageUsageClient = StorageUsageClient() return S_OK()
def main(): Script.parseCommandLine() args = Script.getPositionalArgs() if not args: Script.showHelp() transIDs = [int(arg) for arg in args] from DIRAC.TransformationSystem.Agent.TransformationCleaningAgent import TransformationCleaningAgent from DIRAC.TransformationSystem.Client.TransformationClient import TransformationClient agent = TransformationCleaningAgent( 'Transformation/TransformationCleaningAgent', 'Transformation/TransformationCleaningAgent', 'dirac-transformation-remove-output') agent.initialize() client = TransformationClient() for transID in transIDs: agent.removeTransformationOutput(transID)
import sys if len(sys.argv) < 2: print 'Usage: dirac-transformation-remove-output transID [transID] [transID]' sys.exit() else: transIDs = [int(arg) for arg in sys.argv[1:]] from DIRAC.TransformationSystem.Agent.TransformationCleaningAgent import TransformationCleaningAgent from DIRAC.TransformationSystem.Client.TransformationClient import TransformationClient from DIRAC import gLogger import DIRAC agent = TransformationCleaningAgent( 'Transformation/TransformationCleaningAgent', 'dirac-transformation-remove-output') agent.initialize() client = TransformationClient() for transID in transIDs: res = client.getTransformationParameters(transID, ['Status']) if not res['OK']: gLogger.error("Failed to determine transformation status") gLogger.error(res['Message']) continue status = res['Value'] if not status in [ 'RemovingFiles', 'RemovingOutput', 'ValidatingInput', 'Active' ]: gLogger.error( "The transformation is in %s status and the outputs can not be removed" % status)
import sys if len( sys.argv ) < 2: print 'Usage: dirac-transformation-clean transID [transID] [transID]' sys.exit() else: transIDs = [int( arg ) for arg in sys.argv[1:]] from DIRAC.TransformationSystem.Agent.TransformationCleaningAgent import TransformationCleaningAgent from DIRAC.TransformationSystem.Client.TransformationClient import TransformationClient from DIRAC import gLogger import DIRAC agent = TransformationCleaningAgent( 'Transformation/TransformationCleaningAgent', 'Transformation/TransformationCleaningAgent', 'dirac-transformation-clean' ) agent.initialize() client = TransformationClient() for transID in transIDs: res = client.getTransformationParameters( transID, ['Status'] ) if not res['OK']: gLogger.error( "Failed to determine transformation status" ) gLogger.error( res['Message'] ) continue status = res['Value'] if not status in ['Deleted', 'Cleaning', 'Archived', 'Completed']: gLogger.error( "The transformation is in %s status and can not be cleaned" % status ) continue agent.cleanTransformation( transID )