Example #1
0
    def get_initial(self):
        id = self.kwargs['baremetal']
        node = shovel.request_node_get(id)
        list_drivers = shovel.get_driver_list()['drivers']
        drivers = [ elem['name'] for elem in list_drivers ]
        ports = str(node['name']).split(',')

        list_images = shovel.get_images_list()['images']
        images = [ elem['name'] for elem in list_images ]
        initial = super(RegisterView, self).get_initial()
        initial.update({'nodeid': self.kwargs['baremetal'], 'node': node, 'drivers': drivers,'images':images,'ports': ports})
        return initial
Example #2
0
    def get_initial(self):
        id = self.kwargs['baremetal']
        node = shovel.request_node_get(id)
        list_drivers = shovel.get_driver_list()['drivers']
        drivers = [elem['name'] for elem in list_drivers]
        ports = str(node['name']).split(',')

        list_images = shovel.get_images_list()['images']
        images = [elem['name'] for elem in list_images]
        initial = super(RegisterView, self).get_initial()
        initial.update({
            'nodeid': self.kwargs['baremetal'],
            'node': node,
            'drivers': drivers,
            'images': images,
            'ports': ports
        })
        return initial
Example #3
0
 def _add_new_node(self, request, data):
     try:
         # create node with shovel
         #replace kernal and ramdisk with image id
         list_images = shovel.get_images_list()['images']
         for elem in list_images:
             if data['ramdisk'] == elem['name']:
                 data['ramdisk'] = elem['id']
             if data['kernel'] == elem['name']:
                 data['kernel'] = elem['id']
         result = shovel.register_node_post(data)
         if 'error_message' in result:
             raise Exception(result) 
         else:
             msg = _('Registered node {0} ({1})'.format(data['uuid'], data['name']))
             messages.success(request, msg)
             return True
     except Exception:
         redirect = reverse('horizon:admin:rackhd:index')
         msg = _('Failed to register baremetal node: {0} ({1})'.format(data['uuid'], data['name']))
         messages.error(request, msg)
         return False