Exemplo n.º 1
0
    def test_extract_template_definition_coreos_no_discoveryurl(
            self, mock_objects_baymodel_get_by_uuid, mock_uuid):
        cfg.CONF.set_override('cluster_type', 'coreos', group='k8s_heat')
        cfg.CONF.set_override('coreos_discovery_token_url', None, group='bay')
        mock_uuid.return_value = mock.MagicMock(
            hex='ba3d1866282848ddbedc76112110c208')
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(
             self.context, bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network': 'private',
            'docker_volume_size': 20,
            'ssh_authorized_key': 'ssh_authorized_key',
            'token': 'ba3d1866282848ddbedc76112110c208'
        }
        self.assertEqual(expected, definition)
Exemplo n.º 2
0
    def test_extract_template_definition_coreos_with_disovery(
            self, mock_objects_baymodel_get_by_uuid, reqget):
        cfg.CONF.set_override('cluster_type', 'coreos', group='k8s_heat')
        cfg.CONF.set_override('coreos_discovery_token_url',
                              'http://tokentest',
                              group='bay')
        mock_req = mock.MagicMock(text='/h1/h2/h3')
        reqget.return_value = mock_req
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(
             self.context, bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network': 'private',
            'docker_volume_size': 20,
            'ssh_authorized_key': 'ssh_authorized_key',
            'token': 'h3'
        }
        self.assertEqual(expected, definition)
Exemplo n.º 3
0
    def test_extract_template_definition_without_ssh_authorized_key(
            self, mock_objects_baymodel_get_by_uuid):
        cfg.CONF.set_override('cluster_type', 'coreos', group='k8s_heat')
        baymodel_dict = self.baymodel_dict
        baymodel_dict['ssh_authorized_key'] = None
        baymodel = objects.BayModel(self.context, **baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(
             self.context, bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'master_flavor': 'master_flavor_id',
            'server_flavor': 'flavor_id',
            'number_of_minions': '1',
            'fixed_network': 'private',
            'docker_volume_size': 20,
        }
        self.assertIn('token', definition)
        del definition['token']
        self.assertEqual(expected, definition)
    def test_extract_template_definition_only_required(self,
                                    mock_objects_baymodel_get_by_uuid):
        cfg.CONF.set_override('public_swarm_discovery', False, group='bay')
        cfg.CONF.set_override('swarm_discovery_url_format',
                              'test_discovery', group='bay')

        not_required = ['image_id', 'flavor_id', 'dns_nameserver',
                        'fixed_network']
        for key in not_required:
            self.baymodel_dict[key] = None
        self.bay_dict['discovery_url'] = None

        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'number_of_nodes': '1',
            'discovery_url': 'test_discovery'
        }
        self.assertEqual(expected, definition)
    def test_extract_template_definition_coreos_with_disovery(self,
                                           mock_objects_baymodel_get_by_uuid,
                                           reqget):
        baymodel_dict = self.baymodel_dict
        baymodel_dict['cluster_distro'] = 'coreos'
        cfg.CONF.set_override('coreos_discovery_token_url',
                              'http://tokentest',
                              group='bay')
        mock_req = mock.MagicMock(text='/h1/h2/h3')
        reqget.return_value = mock_req
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network_cidr': '10.20.30.0/24',
            'docker_volume_size': 20,
            'ssh_authorized_key': 'ssh_authorized_key',
            'token': 'h3'
        }
        self.assertEqual(expected, definition)
    def test_extract_template_definition_without_ssh_authorized_key(self,
                                        mock_objects_baymodel_get_by_uuid):
        baymodel_dict = self.baymodel_dict
        baymodel_dict['cluster_distro'] = 'coreos'
        baymodel_dict['ssh_authorized_key'] = None
        baymodel = objects.BayModel(self.context, **baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'master_flavor': 'master_flavor_id',
            'server_flavor': 'flavor_id',
            'number_of_minions': '1',
            'fixed_network_cidr': '10.20.30.0/24',
            'docker_volume_size': 20,
        }
        self.assertIn('token', definition)
        del definition['token']
        self.assertEqual(expected, definition)
    def test_extract_template_definition_coreos_no_discoveryurl(self,
                                           mock_objects_baymodel_get_by_uuid,
                                           mock_uuid):
        baymodel_dict = self.baymodel_dict
        baymodel_dict['cluster_distro'] = 'coreos'
        cfg.CONF.set_override('coreos_discovery_token_url',
                              None,
                              group='bay')
        mock_uuid.return_value = mock.MagicMock(
            hex='ba3d1866282848ddbedc76112110c208')
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network_cidr': '10.20.30.0/24',
            'docker_volume_size': 20,
            'ssh_authorized_key': 'ssh_authorized_key',
            'token': 'ba3d1866282848ddbedc76112110c208'
        }
        self.assertEqual(expected, definition)
    def test_extract_template_definition_all_values(self,
                                    mock_objects_baymodel_get_by_uuid):
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'number_of_nodes': '1',
            'fixed_network_cidr': '10.2.0.0/22',
            'discovery_url': 'token://39987da72f8386e0d0225ae8929e7cb4'
        }
        self.assertEqual(expected, definition)
Exemplo n.º 9
0
    def test_extract_template_definition(self,
                                         mock_objects_baymodel_get_by_uuid):
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(
             self.context, bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network': 'private',
            'docker_volume_size': 20,
        }
        self.assertEqual(expected, definition)
Exemplo n.º 10
0
    def test_extract_template_definition(self,
                                    mock_objects_baymodel_get_by_uuid):
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **self.bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'master_flavor': 'master_flavor_id',
            'number_of_minions': '1',
            'fixed_network': 'private',
            'docker_volume_size': 20,
        }
        self.assertEqual(expected, definition)
    def test_extract_template_definition_without_node_count(self,
                                        mock_objects_baymodel_get_by_uuid):
        bay_dict = self.bay_dict
        bay_dict['node_count'] = None
        baymodel = objects.BayModel(self.context, **self.baymodel_dict)
        mock_objects_baymodel_get_by_uuid.return_value = baymodel
        bay = objects.Bay(self.context, **bay_dict)

        (template_path,
         definition) = bay_k8s_heat._extract_template_definition(self.context,
                                                                 bay)

        expected = {
            'ssh_key_name': 'keypair_id',
            'external_network_id': 'external_network_id',
            'dns_nameserver': 'dns_nameserver',
            'server_image': 'image_id',
            'server_flavor': 'flavor_id',
            'fixed_network_cidr': '10.20.30.0/24',
            'master_flavor': 'master_flavor_id',
            'docker_volume_size': 20,
        }
        self.assertEqual(expected, definition)