Ejemplo n.º 1
0
    def setUp(self):

        import DIRAC.ResourceStatusSystem.Client.ResourceManagementClient as mockedModule

        _serviceIn = ResourceManagementDB.ResourceManagementDB()
        self.client = mockedModule.ResourceManagementClient(
            serviceIn=_serviceIn)
Ejemplo n.º 2
0
def add(switchDict):
    '''
    Given the switches, request a query 'addOrModify' on the ResourceManagementDB
    that inserts or updates-if-duplicated from DowntimeCache.
  '''

    rmsClient = ResourceManagementClient.ResourceManagementClient()

    result = {
        'output': None,
        'successful': None,
        'message': None,
        'match': None
    }
    output = rmsClient.addOrModifyDowntimeCache(
        downtimeID=switchDict['downtimeID'],
        element=switchDict['element'],
        name=switchDict['name'],
        startDate=switchDict['startDate'],
        endDate=switchDict['endDate'],
        severity=switchDict['severity'],
        description=switchDict['description'],
        link=switchDict['link']
        #dateEffective = switchDict[ 'dateEffective' ]
    )

    result['match'] = int(output['Value'])
    result['successful'] = output['OK']
    result['message'] = output['Message'] if 'Message' in output else None

    return result
Ejemplo n.º 3
0
def delete(switchDict):
    '''
    Given the switches, request a query 'delete' on the ResourceManagementDB
    that deletes from DowntimeCache all rows that match the parameters given.
  '''

    rmsClient = ResourceManagementClient.ResourceManagementClient()

    result = {
        'output': None,
        'successful': None,
        'message': None,
        'match': None
    }
    output = rmsClient.deleteDowntimeCache(
        downtimeID=switchDict['downtimeID'],
        element=switchDict['element'],
        name=switchDict['name'],
        startDate=switchDict['startDate'],
        endDate=switchDict['endDate'],
        severity=switchDict['severity'],
        description=switchDict['description'],
        link=switchDict['link']
        #dateEffective = switchDict[ 'dateEffective' ]
    )
    result['match'] = int(output['Value'])
    result['successful'] = output['OK']
    result['message'] = output['Message'] if 'Message' in output else None

    return result
Ejemplo n.º 4
0
    def __init__(self, rStatus=None, rManagement=None):

        # Warm up local CS
        CSHelpers.warmUp()

        if rStatus is None:
            self.rStatus = ResourceStatusClient.ResourceStatusClient()
        if rManagement is None:
            self.rManagement = ResourceManagementClient.ResourceManagementClient(
            )

        self.rssConfig = RssConfiguration()
Ejemplo n.º 5
0
def select(switchDict):
    '''
    Given the switches, request a query 'select' on the ResourceManagementDB
    that gets from DowntimeCache all rows that match the parameters given.
  '''

    rmsClient = ResourceManagementClient.ResourceManagementClient()

    meta = {
        'columns': [
            'downtimeID', 'element', 'name', 'startDate', 'endDate',
            'severity', 'description', 'link', 'dateEffective'
        ]
    }

    result = {
        'output': None,
        'successful': None,
        'message': None,
        'match': None
    }
    output = rmsClient.selectDowntimeCache(
        downtimeID=switchDict['downtimeID'],
        element=switchDict['element'],
        name=switchDict['name'],
        #startDate = switchDict[ 'startDate' ],
        #endDate = switchDict[ 'endDate' ],
        severity=switchDict['severity'],
        #description = switchDict[ 'description' ],
        #link = switchDict[ 'link' ],
        #dateEffective = switchDict[ 'dateEffective' ],
        meta=meta)

    result['output'] = [
        dict(zip(output['Columns'], dt)) for dt in output['Value']
    ]
    if 'ongoing' in switchDict:
        result['output'] = filterOngoing(result['output'])
    else:
        result['output'] = filterDate(result['output'],
                                      switchDict['startDate'],
                                      switchDict['endDate'])
    result['output'] = filterDescription(result['output'],
                                         switchDict['description'])
    result['match'] = len(result['output'])
    result['successful'] = output['OK']
    result['message'] = output['Message'] if 'Message' in output else None

    return result