Example #1
0
    def get_context_data(self, **kwargs):
        context = super(OpenStackHypervisorDetailView, self).get_context_data(**kwargs)
        context['instances'] = []
        context['ops_agent'] = self.kwargs['pk']
        hypervisor_hostname = self.kwargs['hypervisor_hostname']
        agent = OpenStackAgent.objects.get(pk = self.kwargs['pk'])
        client = OpenStackAgentClient(agent.hostname, agent.port)
        instances = client.hypervisor_server_list(hypervisor_hostname)['servers']

        token = client.get_token()['token']
        for instance in instances:
            project_id = client.get_project_id()['project_id']

            instance = OpenStackServer(instance, project_id)
            instance.fill_instance(agent.guest_agent_base_url ,token)
            context['instances'].append(instance)

        return context