Пример #1
0
    def reserve_specific(self, machine_name, timeout=3600, model=None):
        """
        Reserve and lock a specific device. If model is given, check if
        the device is the given model
        """

        # Basically very similar to a reserve-method
        # we just populate they devices array with a single device
        devices = []
        for device_config in self.device_configs:
            if device_config["name"].lower() == machine_name.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                kb_emulator = devicefactory.build_kb_emulator(
                    device_config["settings"])
                device = devicefactory.build_device(device_config["settings"],
                                                    cutter, kb_emulator)
                devices.append(device)
                break

        #Check if device is a given model
        if model and len(devices):
            if not devices[0].model.lower() == model.lower():
                raise errors.AFTConfigurationError(
                    "Device and machine doesn't match")

        return self._do_reserve(devices, machine_name, timeout)
Пример #2
0
def _get_blacklisted_edison_devices(device_manager, blacklisted_edison_names):
    """
    Return list of blacklisted Edison devices

    Args:
        device_manager (aft.devicesmanager): Device manager
        blacklisted_edison_names (list(str)):
            List of names of blacklisted Edisons

    Returns:
        list(aft.Device): List of blacklisted Edison devices

    """
    configs = device_manager.get_configs()

    blacklisted_edisons = []
    for edison in blacklisted_edison_names:
        for conf in configs:
            if conf["name"] == edison:
                cutter = devicefactory.build_cutter(conf["settings"])
                device = devicefactory.build_device(
                    conf["settings"],
                    cutter)
                blacklisted_edisons.append(device)

    return blacklisted_edisons
Пример #3
0
    def reserve(self, timeout = 3600):
        """
        Reserve and lock a device and return it
        """

        devices = []

        for device_config in self.device_configs:
            if device_config["model"].lower() == self._args.machine.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                device = devicefactory.build_device(device_config["settings"], cutter)
                devices.append(device)


        return self._do_reserve(devices, self._args.machine, timeout)
Пример #4
0
    def reserve(self, timeout=3600):
        """
        Reserve and lock a device and return it
        """

        devices = []

        for device_config in self.device_configs:
            if device_config["model"].lower() == self._args.machine.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                device = devicefactory.build_device(device_config["settings"],
                                                    cutter)
                devices.append(device)

        return self._do_reserve(devices, self._args.machine, timeout)
Пример #5
0
    def reserve_specific(self, machine_name, timeout = 3600):
        """Reserve and lock a specific device"""

        # Basically very similar to a reserve-method
        # we just populate they devices array with a single device

        devices = []
        for device_config in self.device_configs:
            if device_config["name"].lower() == machine_name.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                device = devicefactory.build_device(device_config["settings"], cutter)
                devices.append(device)
                break


        return self._do_reserve(devices, machine_name, timeout)
Пример #6
0
    def reserve_specific(self, machine_name, timeout=3600):
        """Reserve and lock a specific device"""

        # Basically very similar to a reserve-method
        # we just populate they devices array with a single device

        devices = []
        for device_config in self.device_configs:
            if device_config["name"].lower() == machine_name.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                device = devicefactory.build_device(device_config["settings"],
                                                    cutter)
                devices.append(device)
                break

        return self._do_reserve(devices, machine_name, timeout)
Пример #7
0
    def reserve_specific(self, machine_name, timeout = 3600, model=None):
        """
        Reserve and lock a specific device. If model is given, check if
        the device is the given model
        """

        # Basically very similar to a reserve-method
        # we just populate they devices array with a single device
        devices = []
        for device_config in self.device_configs:
            if device_config["name"].lower() == machine_name.lower():
                cutter = devicefactory.build_cutter(device_config["settings"])
                device = devicefactory.build_device(device_config["settings"], cutter)
                devices.append(device)
                break

        #Check if device is a given model
        if model and len(devices):
            if not devices[0].model.lower() == model.lower():
                raise errors.AFTConfigurationError(
                    "Device and machine doesn't match")

        return self._do_reserve(devices, machine_name, timeout)
Пример #8
0
def _get_blacklisted_edison_devices(device_manager, blacklisted_edison_names):
    """
    Return list of blacklisted Edison devices

    Args:
        device_manager (aft.devicesmanager): Device manager
        blacklisted_edison_names (list(str)):
            List of names of blacklisted Edisons

    Returns:
        list(aft.Device): List of blacklisted Edison devices

    """
    configs = device_manager.get_configs()

    blacklisted_edisons = []
    for edison in blacklisted_edison_names:
        for conf in configs:
            if conf["name"] == edison:
                cutter = devicefactory.build_cutter(conf["settings"])
                device = devicefactory.build_device(conf["settings"], cutter)
                blacklisted_edisons.append(device)

    return blacklisted_edisons