Beispiel #1
0
def test_new_clouds():
    settings['CLOUD'] = 'aws'
    instance = Instance.new(settings=settings)
    assert isinstance(instance, AWSInstance)

    settings['CLOUD'] = 'gcp'
    instance = Instance.new(settings=settings)
    assert isinstance(instance, GCPInstance)
Beispiel #2
0
def test_new_bare_ip_with_port():
    instance = Instance.new(settings=settings, uid='myid', ip='1.1.1.1:2022')
    assert isinstance(instance, BareInstance)
    assert instance.ip == '1.1.1.1'
    assert instance.port == 2022
    assert instance.username == default_username
    assert instance.keypair == default_keypair
Beispiel #3
0
 def create_bare(self):
     """
     Create instances for the Bare provider
     """
     self.instances = []
     for ip in self.settings['NODES']:
         new_instance = Instance.new(settings=self.settings, cluster=self)
         new_instance.ip = ip
         self.instances.append(new_instance)
Beispiel #4
0
def test_new_bare():
    instance = Instance.new(settings=settings)
    assert isinstance(instance, BareInstance)

    instance = Instance.new(settings=settings, uid='myid')
    assert instance.uid == 'myid'
    assert instance.port == 22
    assert instance.username == default_username
    assert instance.keypair == default_keypair

    instance = Instance.new(settings=settings,
                            uid='myid',
                            ip='1.1.1.1',
                            port=33,
                            username='******',
                            keypair='mykey')
    assert instance.ip == '1.1.1.1'
    assert instance.port == 33
    assert instance.username == 'me'
    assert instance.keypair == 'mykey'
    assert instance.to_dict() == {'ip': '1.1.1.1', 'port': 33, 'uid': 'myid'}
Beispiel #5
0
    def from_list(cls, values, settings):
        """
        From a list of dicts (each dict is an `Instance.to_dict`)
        """
        logger.debug('Creating Cluster from list')
        self = cls()
        self.settings = settings
        self.instances = []

        for instance in values:
            uid, ip, port = instance['uid'], instance['ip'], instance['port']
            new_instance = Instance.new(settings=settings, cluster=self, uid=uid, ip=ip, port=port)
            self.instances.append(new_instance)
        return self
    def create_cloud(self):
        instances = []
        for i in range(self.settings['NUMBER_NODES']):
            new_instance = Instance.new(settings=self.settings, cluster=self)
            instances.append(new_instance)

        create_nodes = [instance.create(suffix=i) for i, instance in enumerate(instances)]
        fetch_nodes = [instance.node for instance in instances]
        self.driver.wait_until_running(fetch_nodes)

        node_ids = [node.id for node in fetch_nodes]
        all_nodes = self.driver.list_nodes()
        new_nodes = [node for node in all_nodes if node.id in node_ids]
        for instance, node in zip(instances, new_nodes):
            instance.node = node

        self.instances = instances
Beispiel #7
0
    def create_cloud(self):
        """
        Create instances for the cloud providers
        """
        instances = []
        for i in range(self.settings['NUMBER_NODES']):
            new_instance = Instance.new(settings=self.settings, cluster=self)
            instances.append(new_instance)

        create_nodes = [instance.create(suffix=i) for i, instance in enumerate(instances)]
        fetch_nodes = [instance.node for instance in instances]
        self.driver.wait_until_running(fetch_nodes)

        node_ids = [node.id for node in fetch_nodes]
        all_nodes = self.driver.list_nodes()
        new_nodes = [node for node in all_nodes if node.id in node_ids]
        for instance, node in zip(instances, new_nodes):
            instance.node = node

        self.instances = instances
def test_bare_new():
    instance = Instance.new(settings=settings)
    assert isinstance(instance, BareInstance)
 def create_bare(self):
     self.instances = []
     for ip in self.settings['NODES']:
         new_instance = Instance.new(settings=self.settings, cluster=self)
         new_instance.ip = ip
         self.instances.append(new_instance)