def __init__(self, config, batchSystem):
        """
        :type config: Config
        :type batchSystem: AbstractBatchSystem
        """
        super(AWSProvisioner, self).__init__()
        self.batchSystem = batchSystem
        ami, instanceType = ':'.split(config.nodeOptions)
        preemptableAmi, preemptableInstanceType = ':'.split(config.preemptableNodeOptions)
        self.ami = switch(ami, preemptableAmi)
        self.instanceType = switch(instanceType, preemptableInstanceType)
        for instanceType in self.instanceType.values():
            try:
                instanceType = ec2_instance_types[instanceType]
            except __HOLE__:
                raise RuntimeError("Invalid or unknown instance type '%s'" % instanceType)
            else:
                # FIXME: add support for EBS volumes
                if instanceType.disks == 0:
                    raise RuntimeError("This provisioner only supports instance types with one or "
                                       "more ephemeral volumes. The requested type '%s' does not "
                                       "have any." % instanceType.name)
        self.spotBid = config.preemptableBidPrice
dataset/ETHPy150Open BD2KGenomics/toil/src/toil/provisioners/aws/provisioner.py/AWSProvisioner.__init__