Multiple panels

Updated import paths, API Wrappers and other files related
to these panels:

- Panels Provider Networks
- Provider Network Topology
- Storage Overview
- System Config
- Server Groups

Change-Id: Iccf33a2d151870b29619dd911f6a5e59c8560bda
This commit is contained in:
Eddie Ramirez 2018-08-17 13:44:48 -07:00
parent a103117e95
commit 6ebbbf4a8c
50 changed files with 395 additions and 200 deletions

View File

@ -14,11 +14,11 @@
# Copyright (c) 2017 Wind River Systems, Inc.
#
#from cgcs_dashboard.api import dc_manager
#from cgcs_dashboard.api import iservice
#from cgcs_dashboard.api import sysinv
from starlingx_dashboard.api import base
from starlingx_dashboard.api import dc_manager
from starlingx_dashboard.api import iservice
from starlingx_dashboard.api import neutron
from starlingx_dashboard.api import nova
from starlingx_dashboard.api import sysinv
from starlingx_dashboard.api import vim
from starlingx_dashboard.api import patch
@ -27,6 +27,10 @@ from starlingx_dashboard.api import patch
__all__ = [
"base",
"dc_manager",
"iservice",
"neutron",
"nova",
"patch",
"sysinv",
"vim",
]

View File

@ -3,10 +3,11 @@
#
# SPDX-License-Identifier: Apache-2.0
#
import six
from django.conf import settings
from horizon import exceptions
import six
from openstack_dashboard.api import base
def get_request_page_size(request, limit=None):
default_limit = getattr(settings, 'API_RESULT_LIMIT', 1000)
@ -16,3 +17,7 @@ def get_request_page_size(request, limit=None):
default_page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20)
return request.session.get('horizon_pagesize', default_page_size)
def is_stx_region(request):
if not base.is_service_enabled(request, 'platform'):
return False
return True

View File

@ -0,0 +1,139 @@
#
# Copyright (c) 2018 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#
from openstack_dashboard.api.neutron import *
def provider_network_type_list(request, **params):
providernet_types = neutronclient(request).list_providernet_types(
**params).get(
'providernet_types')
return [ProviderNetworkType(t) for t in providernet_types]
def provider_network_create(request, **kwargs):
body = {'providernet': kwargs}
providernet = neutronclient(request).create_providernet(body=body).get(
'providernet')
return ProviderNetwork(providernet)
def provider_network_list(request, **params):
providernets = neutronclient(request).list_providernets(**params).get(
'providernets')
return [ProviderNetwork(n) for n in providernets]
def provider_network_list_for_tenant(request, tenant_id, **params):
return provider_network_list(request, tenant_id=tenant_id, **params)
def provider_network_list_tenant_networks(request, providernet_id, **params):
nets = neutronclient(request).list_networks_on_providernet(
providernet_id, **params).get('networks')
return [ProviderTenantNetwork(n) for n in nets]
def provider_network_get(request, providernet_id,
expand_subnet=True, **params):
providernet = neutronclient(request).show_providernet(
providernet_id, **params).get('providernet')
return ProviderNetwork(providernet)
def provider_network_delete(request, providernet_id):
neutronclient(request).delete_providernet(providernet_id)
def provider_network_modify(request, providernet_id, **kwargs):
body = {'providernet': kwargs}
providernet = neutronclient(request).update_providernet(
providernet_id, body=body).get('providernet')
return ProviderNetwork(providernet)
def provider_network_range_create(request, **kwargs):
body = {'providernet_range': kwargs}
range = neutronclient(request).create_providernet_range(body=body).get(
'providernet_range')
return ProviderNetworkRange(range)
def provider_network_range_list(request, **params):
ranges = neutronclient(request).list_providernet_ranges(**params).get(
'providernet_ranges')
return [ProviderNetworkRange(r) for r in ranges]
def provider_network_range_get(request, range_id,
expand_subnet=True, **params):
range = neutronclient(request).show_providernet_range(
range_id, **params).get('providernet_range')
return ProviderNetworkRange(range)
def provider_network_range_delete(request, range_id):
neutronclient(request).delete_providernet_range(range_id)
def provider_network_range_modify(request, range_id, **kwargs):
body = {'providernet_range': kwargs}
range = neutronclient(request).update_providernet_range(
range_id, body=body).get('providernet_range')
return ProviderNetworkRange(range)
def qos_list(request):
qoses = neutronclient(request).list_qoses().get('qoses')
return [QoSPolicy(q) for q in qoses]
def qos_get(request, qos_id):
qos = neutronclient(request).show_qos(qos_id).get('qos')
return QoSPolicy(qos)
def qos_create(request, **kwargs):
body = {'qos': kwargs}
return neutronclient(request).create_qos(body=body)
def qos_update(request, qos_id, **kwargs):
body = {'qos': kwargs}
return neutronclient(request).update_qos(qos_id, body=body)
def qos_delete(request, qos_id):
neutronclient(request).delete_qos(qos_id)
def portforwarding_list(request, **params):
rules = (neutronclient(request).
list_portforwardings(**params).get('portforwardings'))
return [PortForwardingRule(r) for r in rules]
def portforwarding_get(request, portforwarding_id):
rule = (neutronclient(request).
show_portforwarding(portforwarding_id).get('portforwarding'))
return PortForwardingRule(rule)
def portforwarding_create(request, **kwargs):
body = {'portforwarding': kwargs}
rule = neutronclient(request).create_portforwarding(body=body)
return PortForwardingRule(rule)
def portforwarding_update(request, portforwarding_id, **kwargs):
body = {'portforwarding': kwargs}
rule = neutronclient(request).update_portforwarding(
portforwarding_id, body=body).get('portforwarding')
return PortForwardingRule(rule)
def portforwarding_delete(request, portforwarding_id):
return neutronclient(request).delete_portforwarding(portforwarding_id)

View File

@ -4,10 +4,26 @@
# SPDX-License-Identifier: Apache-2.0
#
from novaclient.v2 import wrs_pci
from novaclient.v2 import wrs_providernets
from openstack_dashboard.api.nova import *
def server_group_create(request, **kwargs):
return novaclient(request).server_groups.create(**kwargs)
def server_group_list(request, all_projects=False):
return novaclient(request).server_groups.list(all_projects)
def server_group_get(request, server_group_id):
return novaclient(request).server_groups.get(server_group_id)
def server_group_create(request, name, project_id, metadata, policies):
return novaclient(request).server_groups.create(
name, project_id, metadata, policies)
def server_group_delete(request, server_group_id):
return novaclient(request).server_groups.delete(server_group_id)
def provider_network_get(request, providernet_id):

View File

@ -8,6 +8,7 @@
from django.utils.translation import ugettext_lazy as _
import horizon
from openstack_dashboard.api import base
from openstack_dashboard.dashboards.admin import dashboard

View File

@ -8,11 +8,11 @@ import logging
from django.utils.translation import ugettext_lazy as _
from openstack_dashboard.dashboards.admin.fault_management import \
from starlingx_dashboard.dashboards.admin.fault_management import \
tables as fm_tables
from openstack_dashboard.dashboards.admin.inventory.interfaces import \
from starlingx_dashboard.dashboards.admin.inventory.interfaces import \
tables as if_tables
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges import \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges import \
tables as sr_tables
LOG = logging.getLogger(__name__)

View File

@ -12,12 +12,13 @@ from django.utils.translation import ugettext_lazy as _ # noqa
from horizon import exceptions
from horizon import tabs
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.host_topology import \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.host_topology import \
tables as tables
from openstack_dashboard.dashboards.admin.inventory import \
from starlingx_dashboard.dashboards.admin.inventory import \
tabs as i_tabs
from openstack_dashboard.dashboards.admin.providernets.providernets import \
from starlingx_dashboard.dashboards.admin.providernets.providernets import \
tables as pn_tables
LOG = logging.getLogger(__name__)
@ -83,7 +84,7 @@ class OverviewTab(tabs.TableTab):
def get_tenant_networks_data(self):
try:
providernet_id = self.tab_group.kwargs['providernet_id']
networks = api.neutron.provider_network_list_tenant_networks(
networks = stx_api.neutron.provider_network_list_tenant_networks(
self.request, providernet_id=providernet_id)
except Exception:
networks = []
@ -94,7 +95,7 @@ class OverviewTab(tabs.TableTab):
def get_provider_network_ranges_data(self):
try:
providernet_id = self.tab_group.kwargs['providernet_id']
ranges = api.neutron.provider_network_range_list(
ranges = stx_api.neutron.provider_network_range_list(
self.request, providernet_id=providernet_id)
except Exception:
ranges = []

View File

@ -7,7 +7,7 @@
from django.conf.urls import url
from openstack_dashboard.dashboards.admin.host_topology import views
from starlingx_dashboard.dashboards.admin.host_topology import views
urlpatterns = [

View File

@ -20,13 +20,14 @@ from horizon import tabs
from horizon.utils import settings as utils_settings
from horizon import views
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.host_topology import\
tabs as topology_tabs
from openstack_dashboard.dashboards.admin.inventory import\
views as i_views
from openstack_dashboard.usage import quotas
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.host_topology import\
tabs as topology_tabs
from starlingx_dashboard.dashboards.admin.inventory import\
views as i_views
LOG = logging.getLogger(__name__)
@ -41,7 +42,7 @@ class HostDetailView(i_views.DetailView):
alarms = []
try:
alarms = api.sysinv.alarm_list(self.request)
alarms = stx_api.sysinv.alarm_list(self.request)
except Exception as ex:
exceptions.handle(ex)
# Filter out unrelated alarms
@ -72,11 +73,11 @@ class ProvidernetDetailView(tabs.TabbedTableView):
if not hasattr(self, "_providernet"):
try:
providernet_id = self.kwargs['providernet_id']
providernet = api.neutron.provider_network_get(
providernet = stx_api.neutron.provider_network_get(
self.request, providernet_id)
providernet.set_id_as_name_if_empty(length=0)
alarms = api.sysinv.alarm_list(self.request)
alarms = stx_api.sysinv.alarm_list(self.request)
# Filter out unrelated alarms
providernet.alarms = \
topology_tabs.get_alarms_for_entity(alarms,
@ -99,7 +100,7 @@ class ProvidernetDetailView(tabs.TabbedTableView):
if not hasattr(self, "_providernet_nova"):
try:
providernet_id = self.kwargs['providernet_id']
providernet_nova = api.nova.provider_network_get(
providernet_nova = stx_api.nova.provider_network_get(
self.request, providernet_id)
except Exception:
redirect = self.failure_url
@ -172,7 +173,7 @@ class JSONView(View):
def _get_alarms(self, request):
alarms = []
try:
alarms = api.sysinv.alarm_list(request)
alarms = stx_api.sysinv.alarm_list(request)
except Exception as ex:
exceptions.handle(ex)
@ -182,7 +183,7 @@ class JSONView(View):
def _get_hosts(self, request):
hosts = []
try:
hosts = api.sysinv.host_list(request)
hosts = stx_api.sysinv.host_list(request)
except Exception as ex:
exceptions.handle(ex)
@ -192,15 +193,15 @@ class JSONView(View):
try:
host_data['ports'] = [
p.to_dict() for p in
api.sysinv.host_port_list(request, host.uuid)]
stx_api.sysinv.host_port_list(request, host.uuid)]
host_data['interfaces'] = [
i.to_dict() for i in
api.sysinv.host_interface_list(request, host.uuid)]
stx_api.sysinv.host_interface_list(request, host.uuid)]
host_data['lldpneighbours'] = [
n.to_dict() for n in
api.sysinv.host_lldpneighbour_list(request, host.uuid)]
stx_api.sysinv.host_lldpneighbour_list(request, host.uuid)]
# Set the value for neighbours field for each port in the host.
# This will be referenced in Interfaces table
@ -219,7 +220,7 @@ class JSONView(View):
def _get_pnets(self, request):
pnets = []
try:
pnets = api.neutron.provider_network_list(request)
pnets = stx_api.neutron.provider_network_list(request)
except Exception as ex:
exceptions.handle(ex)
data = [p.to_dict() for p in pnets]

View File

@ -20,12 +20,14 @@ import logging
from django.core.urlresolvers import reverse # noqa
from django.utils.translation import ugettext_lazy as _ # noqa
from neutronclient.common import exceptions as neutron_exceptions
from horizon import exceptions
from horizon import forms
from horizon import messages
from openstack_dashboard import api
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -66,7 +68,7 @@ class CreateProviderNetwork(forms.SelfHandlingForm):
super(CreateProviderNetwork, self).__init__(request, *args, **kwargs)
providernet_type_choices = [('', _("Select a network type"))]
providernet_types = api.neutron.provider_network_type_list(request)
providernet_types = stx_api.neutron.provider_network_type_list(request)
for providernet_type in providernet_types:
providernet_type_choices.append((providernet_type.type,
providernet_type.type))
@ -87,7 +89,7 @@ class CreateProviderNetwork(forms.SelfHandlingForm):
'mtu': data['mtu'],
'vlan_transparent': data['vlan_transparent']}
network = api.neutron.provider_network_create(request, **params)
network = stx_api.neutron.provider_network_create(request, **params)
msg = (_('Provider network %s was successfully created.') %
data['name'])
LOG.debug(msg)
@ -135,7 +137,7 @@ class UpdateProviderNetwork(forms.SelfHandlingForm):
'mtu': data['mtu'],
'vlan_transparent': data['vlan_transparent']}
providernet = api.neutron.provider_network_modify(
providernet = stx_api.neutron.provider_network_modify(
request, data['id'], **params)
msg = (_('Provider network %s was successfully updated.') %
data['name'])

View File

@ -20,13 +20,17 @@ import logging
from django.core.urlresolvers import reverse # noqa
from django.utils.translation import ugettext_lazy as _ # noqa
from neutronclient.common import exceptions as neutron_exceptions
from horizon import exceptions
from horizon import forms
from horizon import messages
from neutronclient.common import exceptions as neutron_exceptions
from openstack_dashboard import api
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -133,7 +137,7 @@ class CreateProviderNetworkRange(forms.SelfHandlingForm):
params['port'] = int(data['port'])
params['ttl'] = int(data['ttl'])
providernet_range = api.neutron.provider_network_range_create(
providernet_range = stx_api.neutron.provider_network_range_create(
request, **params)
msg = (_('Provider network range %s was successfully created.') %
providernet_range['id'])
@ -224,7 +228,7 @@ class UpdateProviderNetworkRange(forms.SelfHandlingForm):
'minimum': data['minimum'],
'maximum': data['maximum']}
providernet_range = api.neutron.provider_network_range_modify(
providernet_range = stx_api.neutron.provider_network_range_modify(
request, data['providernet_range_id'], **params)
msg = (_('Provider network range %s was successfully updated.') %
data['providernet_range_id'])

View File

@ -24,11 +24,13 @@ from django.core.urlresolvers import reverse # noqa
from django.template import defaultfilters as filters
from django.utils.translation import ugettext_lazy as _ # noqa
from django.utils.translation import ungettext_lazy
from neutronclient.common import exceptions as neutron_exceptions
from horizon import exceptions
from horizon import tables
from openstack_dashboard import api
from neutronclient.common import exceptions as neutron_exceptions
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -57,7 +59,7 @@ class DeleteProviderNetworkRange(tables.DeleteAction):
def delete(self, request, obj_id):
try:
api.neutron.provider_network_range_delete(request, obj_id)
stx_api.neutron.provider_network_range_delete(request, obj_id)
except neutron_exceptions.NeutronClientException as e:
LOG.info(e.message)
exceptions.handle(request, e.message,

View File

@ -20,7 +20,7 @@
from django.conf.urls import url # noqa
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import views
RANGES = r'^(?P<providernet_range_id>[^/]+)/%s$'

View File

@ -25,10 +25,11 @@ from horizon import exceptions
from horizon import forms
from horizon import tabs
from horizon.utils import memoized
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import forms as range_forms
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import tabs as range_tabs
@ -50,7 +51,7 @@ class CreateView(forms.ModalFormView):
if not hasattr(self, "_object"):
try:
providernet_id = self.kwargs["providernet_id"]
self._object = api.neutron.provider_network_get(self.request,
self._object = stx_api.neutron.provider_network_get(self.request,
providernet_id)
except Exception:
redirect = reverse(self.failure_url,
@ -82,7 +83,7 @@ class DetailView(tabs.TabView):
providernet_range_id = \
self.kwargs['providernet_range_id']
try:
self._object = api.neutron.provider_network_range_get(
self._object = stx_api.neutron.provider_network_range_get(
self.request, providernet_range_id)
except Exception:
redirect = \
@ -112,7 +113,7 @@ class DetailView(tabs.TabView):
@memoized.memoized_method
def get_providernet_name(self, providernet_id):
try:
providernet = api.neutron.provider_network_get(self.request,
providernet = stx_api.neutron.provider_network_get(self.request,
providernet_id)
providernet.set_id_as_name_if_empty(length=0)
except Exception:
@ -142,7 +143,7 @@ class UpdateView(forms.ModalFormView):
if not hasattr(self, "_object"):
providernet_range_id = self.kwargs['providernet_range_id']
try:
self._object = api.neutron.provider_network_range_get(
self._object = stx_api.neutron.provider_network_range_get(
self.request, providernet_range_id)
except Exception:
redirect = \

View File

@ -23,11 +23,12 @@ from django.core.urlresolvers import reverse # noqa
from django.utils.translation import ugettext_lazy as _ # noqa
from django.utils.translation import ungettext_lazy
from neutronclient.common import exceptions as neutron_exceptions
from horizon import exceptions
from horizon import tables
from openstack_dashboard import api
from neutronclient.common import exceptions as neutron_exceptions
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -51,7 +52,7 @@ class DeleteProviderNetwork(tables.DeleteAction):
def delete(self, request, obj_id):
try:
api.neutron.provider_network_delete(request, obj_id)
stx_api.neutron.provider_network_delete(request, obj_id)
except neutron_exceptions.NeutronClientException as e:
LOG.info(e.message)
redirect = reverse('horizon:admin:providernets:index')

View File

@ -19,15 +19,15 @@
from django.conf.urls import include # noqa
from django.conf.urls import url # noqa
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import urls as range_urls
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import views as range_views
from openstack_dashboard.dashboards.admin.providernets.providernets import \
from starlingx_dashboard.dashboards.admin.providernets.providernets import \
views
PROVIDERNETS = r'^(?P<providernet_id>[^/]+)/%s$'
VIEW_MOD = 'openstack_dashboard.dashboards.admin.providernets.providernets.' \
VIEW_MOD = 'starlingx_dashboard.dashboards.admin.providernets.providernets.' \
'views'
urlpatterns = [

View File

@ -26,14 +26,17 @@ from django.utils.translation import ugettext_lazy as _ # noqa
from horizon import exceptions
from horizon import forms
from horizon import tables
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.providernets.providernets import \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.providernets.providernets import \
forms as providernet_forms
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import tables as range_tables
from openstack_dashboard.dashboards.admin.providernets.providernets.ranges \
from starlingx_dashboard.dashboards.admin.providernets.providernets.ranges \
import views as range_views
from openstack_dashboard.dashboards.admin.providernets.providernets import \
from starlingx_dashboard.dashboards.admin.providernets.providernets import \
tables as providernet_tables
LOG = logging.getLogger(__name__)
@ -68,7 +71,7 @@ class DetailView(tables.MultiTableView):
try:
providernet_id = self.kwargs['providernet_id']
# self.table.kwargs['providernet'] = self._get_data()
networks = api.neutron.provider_network_list_tenant_networks(
networks = stx_api.neutron.provider_network_list_tenant_networks(
self.request, providernet_id=providernet_id)
except Exception:
networks = []
@ -80,7 +83,7 @@ class DetailView(tables.MultiTableView):
try:
providernet_id = self.kwargs['providernet_id']
# self.table.kwargs['providernet'] = self._get_data()
ranges = api.neutron.provider_network_range_list(
ranges = stx_api.neutron.provider_network_range_list(
self.request, providernet_id=providernet_id)
except Exception:
ranges = []
@ -98,7 +101,7 @@ class DetailView(tables.MultiTableView):
if not hasattr(self, "_providernet"):
try:
providernet_id = self.kwargs['providernet_id']
providernet = api.neutron.provider_network_get(
providernet = stx_api.neutron.provider_network_get(
self.request, providernet_id)
providernet.set_id_as_name_if_empty(length=0)
except Exception:
@ -114,7 +117,7 @@ class DetailView(tables.MultiTableView):
if not hasattr(self, "_providernet_nova"):
try:
providernet_id = self.kwargs['providernet_id']
providernet_nova = api.nova.provider_network_get(
providernet_nova = stx_api.nova.provider_network_get(
self.request, providernet_id)
except Exception as ex:
# redirect = self.failure_url
@ -149,7 +152,7 @@ class UpdateView(forms.ModalFormView):
if not hasattr(self, "_object"):
providernet_id = self.kwargs['providernet_id']
try:
self._object = api.neutron.provider_network_get(
self._object = stx_api.neutron.provider_network_get(
self.request, providernet_id)
except Exception:
redirect = self.success_url

View File

@ -11,9 +11,10 @@ from django.utils.translation import ugettext_lazy as _ # noqa
from horizon import exceptions
from horizon import tabs
from openstack_dashboard.api import base
from openstack_dashboard.api import neutron
from openstack_dashboard.dashboards.admin.providernets.providernets import \
from starlingx_dashboard.api import base as stx_base
from starlingx_dashboard.api import neutron as stx_neutron
from starlingx_dashboard.dashboards.admin.providernets.providernets import \
tables as providernets_tables
LOG = logging.getLogger(__name__)
@ -28,7 +29,7 @@ class ProviderNetworkTab(tabs.TableTab):
def get_provider_networks_data(self):
try:
providernets = \
neutron.provider_network_list(self.tab_group.request)
stx_neutron.provider_network_list(self.tab_group.request)
except Exception:
providernets = []
msg = _('Unable to get provider network list.')
@ -37,7 +38,7 @@ class ProviderNetworkTab(tabs.TableTab):
return providernets
def allowed(self, request):
return base.is_TiS_region(request)
return stx_base.is_stx_region(request)
class NetworkTabs(tabs.TabGroup):

View File

@ -7,9 +7,9 @@
from django.conf.urls import include
from django.conf.urls import url
from openstack_dashboard.dashboards.admin.providernets.providernets \
from starlingx_dashboard.dashboards.admin.providernets.providernets \
import urls as providernet_urls
from openstack_dashboard.dashboards.admin.providernets import views
from starlingx_dashboard.dashboards.admin.providernets import views
NETWORKS = r'^(?P<network_id>[^/]+)/%s$'

View File

@ -8,7 +8,7 @@ from django.utils.translation import ugettext_lazy as _
from horizon import tabs
from openstack_dashboard.dashboards.admin.providernets \
from starlingx_dashboard.dashboards.admin.providernets \
import tabs as project_tabs

View File

@ -33,6 +33,7 @@ from openstack_dashboard.api import cinder
from openstack_dashboard.api import nova
from openstack_dashboard.dashboards.project.instances import tables
from starlingx_dashboard.api import nova as stx_nova
class CreateForm(forms.SelfHandlingForm):
tenantP = forms.ChoiceField(label=_("Project"), required=True)
@ -109,7 +110,7 @@ class CreateForm(forms.SelfHandlingForm):
if data['tenantP']:
project_id = data['tenantP']
server_group = nova.server_group_create(
server_group = stx_nova.server_group_create(
request, data['name'], project_id, metadata, policies)
return server_group

View File

@ -33,6 +33,7 @@ from openstack_dashboard.dashboards.project.volumes.tables \
import get_attachment_name
from openstack_dashboard.usage import quotas
from starlingx_dashboard.api import nova as stx_nova
DELETABLE_STATES = ("available", "error")
@ -59,7 +60,7 @@ class DeleteServerGroup(tables.DeleteAction):
name = self.table.get_object_display(obj)
try:
nova.server_group_delete(request, obj_id)
stx_nova.server_group_delete(request, obj_id)
except Exception:
msg = _('Unable to delete group "%s" because it is not empty. '
'Either delete the member instances'
@ -117,7 +118,7 @@ class UpdateRow(tables.Row):
ajax = True
def get_data(self, request, server_group_id):
server_group = nova.server_group_get(request, server_group_id)
server_group = stx_nova.server_group_get(request, server_group_id)
if not server_group.name:
server_group.name = server_group_id

View File

@ -23,6 +23,8 @@ from horizon import tabs
from openstack_dashboard.api import nova
from starlingx_dashboard.api import nova as stx_nova
class OverviewTab(tabs.Tab):
name = _("Overview")
@ -33,7 +35,7 @@ class OverviewTab(tabs.Tab):
def get_context_data(self, request):
server_group_id = self.tab_group.kwargs['server_group_id']
try:
server_group = nova.server_group_get(request, server_group_id)
server_group = stx_nova.server_group_get(request, server_group_id)
server_group.members_display = []
for member in server_group.members:
server_group.members_display.append(

View File

@ -1,6 +1,5 @@
{% extends "horizon/common/_modal_form.html" %}
{% load i18n %}
{% load url from future %}
{% block form_id %}attach_volume_form{% endblock %}
{% block form_action %}{% url 'horizon:project:volumes:attach' volume.id %}{% endblock %}

View File

@ -1,6 +1,5 @@
{% extends "horizon/common/_modal_form.html" %}
{% load i18n %}
{% load url from future %}
{% block form_id %}{% endblock %}
{% block form_action %}{% url 'horizon:admin:server_groups:create' %}?{{ request.GET.urlencode }}{% endblock %}

View File

@ -1,5 +1,4 @@
{% load i18n sizeformat parse_date %}
{% load url from future %}
<h3>{% trans "Server Group Overview" %}: {{server_group.name }}</h3>

View File

@ -17,7 +17,7 @@
from django.conf.urls import url
from openstack_dashboard.dashboards.admin.server_groups import views
from starlingx_dashboard.dashboards.admin.server_groups import views
urlpatterns = [

View File

@ -30,12 +30,13 @@ from horizon import tabs
from openstack_dashboard import api
from openstack_dashboard.usage import quotas
from openstack_dashboard.dashboards.admin.server_groups \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.server_groups \
import forms as admin_forms
from openstack_dashboard.dashboards.admin.server_groups \
from starlingx_dashboard.dashboards.admin.server_groups \
import tables as admin_tables
from openstack_dashboard.dashboards.admin.server_groups \
from starlingx_dashboard.dashboards.admin.server_groups \
import tabs as admin_tabs
@ -47,7 +48,7 @@ class IndexView(tables.DataTableView):
def get_data(self):
try:
server_groups = api.nova.server_group_list(
server_groups = stx_api.nova.server_group_list(
self.request, all_projects=True)
except Exception:
server_groups = []

View File

@ -7,6 +7,7 @@
from django.utils.translation import ugettext_lazy as _
import horizon
from openstack_dashboard.api import base
from openstack_dashboard.dashboards.admin import dashboard

View File

@ -10,11 +10,13 @@ from django.utils.translation import ugettext_lazy as _
from horizon import exceptions
from horizon import tabs
from openstack_dashboard.api import base
from openstack_dashboard.api import ceph
from openstack_dashboard.api import sysinv
from openstack_dashboard.dashboards.admin.storage_overview import constants
from openstack_dashboard.dashboards.admin.storage_overview import tables
from starlingx_dashboard.api import base as stx_base
from starlingx_dashboard.api import sysinv
from starlingx_dashboard.dashboards.admin.storage_overview import constants
from starlingx_dashboard.dashboards.admin.storage_overview import tables
LOG = logging.getLogger(__name__)
@ -68,7 +70,7 @@ class StorageServicesTab(tabs.TableTab):
return
def allowed(self, request):
return base.is_TiS_region(request)
return stx_base.is_stx_region(request)
class StorageUsageTab(tabs.TableTab):

View File

@ -5,7 +5,8 @@
#
from django.conf.urls import url
from openstack_dashboard.dashboards.admin.storage_overview import views
from starlingx_dashboard.dashboards.admin.storage_overview import views
urlpatterns = [
url(r'^$', views.StorageOverview.as_view(), name='index')

View File

@ -7,10 +7,10 @@
from django.utils.translation import ugettext_lazy as _
from horizon import tabs
from openstack_dashboard.dashboards.admin.storage_overview import (
from starlingx_dashboard.dashboards.admin.storage_overview import (
tabs as project_tabs
)
from openstack_dashboard.dashboards.admin.storage_overview import constants
from starlingx_dashboard.dashboards.admin.storage_overview import constants
class StorageOverview(tabs.TabbedTableView):

View File

@ -20,11 +20,13 @@ import logging
from django.core.urlresolvers import reverse
from django import shortcuts
from django.utils.translation import ugettext_lazy as _
import netaddr
from horizon import forms
from horizon import messages
from openstack_dashboard import api
import netaddr
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -89,7 +91,7 @@ class CreateAddressPool(forms.SelfHandlingForm):
'order': data['order']}
if data.get('ranges'):
body['ranges'] = data.get('ranges')
pool = api.sysinv.address_pool_create(request, **body)
pool = stx_api.sysinv.address_pool_create(request, **body)
msg = (_('Address pool was successfully created'))
messages.success(request, msg)
return pool
@ -123,7 +125,7 @@ class UpdateAddressPool(CreateAddressPool):
updates['order'] = data['order']
if data.get('ranges'):
updates['ranges'] = data['ranges']
pool = api.sysinv.address_pool_update(request, data['id'],
pool = stx_api.sysinv.address_pool_update(request, data['id'],
**updates)
msg = (_('Address pool was successfully updated'))
messages.success(request, msg)

View File

@ -20,7 +20,8 @@ from django.utils.translation import ungettext_lazy
from horizon import exceptions
from horizon import tables
from openstack_dashboard import api
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -47,7 +48,7 @@ class DeleteAddressPool(tables.DeleteAction):
def delete(self, request, obj_id):
try:
api.sysinv.address_pool_delete(request, obj_id)
stx_api.sysinv.address_pool_delete(request, obj_id)
except Exception:
exceptions.handle(request, redirect=self.get_redirect_url())

View File

@ -20,11 +20,11 @@ from django.utils.translation import ugettext_lazy as _ # noqa
from horizon import exceptions
from horizon import forms
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.system_config.address_pools import \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.system_config.address_pools import \
forms as address_pool_forms
from openstack_dashboard.dashboards.admin.system_config.address_pools import \
from starlingx_dashboard.dashboards.admin.system_config.address_pools import \
tables as address_pool_tables
LOG = logging.getLogger(__name__)
@ -64,7 +64,7 @@ class UpdateAddressPoolView(forms.ModalFormView):
if not hasattr(self, "_object"):
address_pool_uuid = self.kwargs['address_pool_uuid']
try:
self._object = api.sysinv.address_pool_get(
self._object = stx_api.sysinv.address_pool_get(
self.request, address_pool_uuid)
except Exception:
redirect = self.success_url

View File

@ -9,6 +9,7 @@ import logging
from collections import OrderedDict
from cgtsclient import exc
from django.core.urlresolvers import reverse # noqa
from django.utils.translation import ugettext_lazy as _
@ -18,6 +19,8 @@ from horizon import messages
from openstack_dashboard import api
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -58,7 +61,7 @@ class UpdateSystem(forms.SelfHandlingForm):
if not data['description']:
data['description'] = " "
system = api.sysinv.system_update(request, system_uuid, **data)
system = stx_api.sysinv.system_update(request, system_uuid, **data)
msg = _('System "%s" was successfully updated.') % system_name
LOG.debug(msg)
messages.success(request, msg)
@ -135,7 +138,7 @@ class UpdatecDNS(forms.SelfHandlingForm):
NAMESERVERS['NAMESERVER_%s' % index] = \
data['NAMESERVER_%s' % index]
dns_config = api.sysinv.dns_get(request, data['uuid'])
dns_config = stx_api.sysinv.dns_get(request, data['uuid'])
if hasattr(dns_config, 'uuid'):
dns_config_uuid = dns_config.uuid
@ -180,7 +183,7 @@ class UpdatecDNS(forms.SelfHandlingForm):
LOG.debug(data)
if send_to_sysinv is True:
my_dns = api.sysinv.dns_update(request,
my_dns = stx_api.sysinv.dns_update(request,
dns_config_uuid, **data)
if my_dns:
@ -265,7 +268,7 @@ class UpdatecNTP(forms.SelfHandlingForm):
NTPSERVERS['NTP_SERVER_%s' % index] = data[
'NTP_SERVER_%s' % index]
ntp_config = api.sysinv.ntp_get(request, data['uuid'])
ntp_config = stx_api.sysinv.ntp_get(request, data['uuid'])
if hasattr(ntp_config, 'uuid'):
@ -312,7 +315,7 @@ class UpdatecNTP(forms.SelfHandlingForm):
if send_to_sysinv:
my_ntp = \
api.sysinv.ntp_update(request, ntp_config_uuid, **data)
stx_api.sysinv.ntp_update(request, ntp_config_uuid, **data)
if my_ntp:
msg = _('NTP configuration was successfully updated. ')
@ -406,7 +409,7 @@ class UpdatecEXT_OAM(forms.SelfHandlingForm):
if not kwargs['initial'].get('EXTERNAL_OAM_GATEWAY_ADDRESS'):
self.fields['EXTERNAL_OAM_GATEWAY_ADDRESS'].widget = \
forms.widgets.HiddenInput()
if api.sysinv.is_system_mode_simplex(request):
if stx_api.sysinv.is_system_mode_simplex(request):
self.fields['EXTERNAL_OAM_FLOATING_ADDRESS'].label = \
_("External OAM Address")
self.fields['EXTERNAL_OAM_FLOATING_ADDRESS'].help_text = \
@ -434,7 +437,7 @@ class UpdatecEXT_OAM(forms.SelfHandlingForm):
else:
data['uuid'] = ' '
oam_data = api.sysinv.extoam_get(request, data['uuid'])
oam_data = stx_api.sysinv.extoam_get(request, data['uuid'])
if hasattr(oam_data, 'uuid'):
oam_data_uuid = oam_data.uuid
@ -453,7 +456,7 @@ class UpdatecEXT_OAM(forms.SelfHandlingForm):
data['oam_gateway_ip'] = \
data['EXTERNAL_OAM_GATEWAY_ADDRESS']
if not api.sysinv.is_system_mode_simplex(request):
if not stx_api.sysinv.is_system_mode_simplex(request):
data['oam_c0_ip'] = data['EXTERNAL_OAM_0_ADDRESS']
data['oam_c1_ip'] = data['EXTERNAL_OAM_1_ADDRESS']
@ -490,7 +493,7 @@ class UpdatecEXT_OAM(forms.SelfHandlingForm):
if send_to_sysinv:
LOG.info("OAM sendtosysinv data=%s", data)
myoam_data = api.sysinv.extoam_update(self.request,
myoam_data = stx_api.sysinv.extoam_update(self.request,
oam_data_uuid,
**data)
if myoam_data:
@ -595,7 +598,7 @@ class UpdateiStorage(forms.SelfHandlingForm):
new_data = {k.replace("_", "-"): v for k, v in data.items()}
try:
fs_list = api.sysinv.controllerfs_list(self.request)
fs_list = stx_api.sysinv.controllerfs_list(self.request)
fs_data = {fs.name: fs.size for fs in fs_list}
for k, v in fs_data.items():
@ -605,17 +608,17 @@ class UpdateiStorage(forms.SelfHandlingForm):
ceph_data = {'ceph_mon_gib': 0}
ceph_data['ceph_mon_gib'] = new_data.get(k)
del new_data[k]
ceph_mons = api.sysinv.cephmon_list(request)
ceph_mons = stx_api.sysinv.cephmon_list(request)
if ceph_mons:
for ceph_mon in ceph_mons:
if hasattr(ceph_mon, 'uuid'):
my_storage = api.sysinv.ceph_mon_update(
my_storage = stx_api.sysinv.ceph_mon_update(
request, ceph_mon.uuid, **ceph_data)
if not my_storage:
return False
if new_data:
my_storage = api.sysinv.storfs_update_many(request,
my_storage = stx_api.sysinv.storfs_update_many(request,
system_uuid,
**new_data)
return True
@ -702,7 +705,7 @@ class UpdateiStoragePools(forms.SelfHandlingForm):
else:
data['uuid'] = ' '
storage_config = api.sysinv.storagepool_get(request,
storage_config = stx_api.sysinv.storagepool_get(request,
data['uuid'])
data.pop('uuid')
@ -746,7 +749,7 @@ class UpdateiStoragePools(forms.SelfHandlingForm):
LOG.debug(data)
if send_to_sysinv:
my_storage = api.sysinv.storpool_update(request,
my_storage = stx_api.sysinv.storpool_update(request,
storage_config_uuid,
**data)
@ -838,7 +841,7 @@ class CreateSDNController(SDNControllerForm):
def handle(self, request, data):
try:
# Don't prevalidate. Let SysInv handle it
controller = api.sysinv.sdn_controller_create(request, **data)
controller = stx_api.sysinv.sdn_controller_create(request, **data)
msg = (_('SDN Controller was successfully created.'))
LOG.debug(msg)
messages.success(request, msg)
@ -855,7 +858,7 @@ class UpdateSDNController(SDNControllerForm):
def handle(self, request, data):
try:
controller = api.sysinv.sdn_controller_update(
controller = stx_api.sysinv.sdn_controller_update(
request, **data)
msg = (_('SDN Controller %s was successfully updated.') %
data['uuid'])

View File

@ -12,7 +12,8 @@ from django.utils.translation import ugettext_lazy as _
from django.utils.translation import ungettext_lazy
from horizon import tables
from openstack_dashboard import api
from starlingx_dashboard import api as stx_api
LOG = logging.getLogger(__name__)
@ -116,7 +117,7 @@ class UpdateDNSRow(tables.Row):
ajax = True
def get_data(self, request, obj_id):
return api.sysinv.dns_get(request, obj_id)
return stx_api.sysinv.dns_get(request, obj_id)
class cDNSTable(tables.DataTable):
@ -151,7 +152,7 @@ class UpdateNTPRow(tables.Row):
ajax = True
def get_data(self, request, obj_id):
return api.sysinv.ntp_get(request, obj_id)
return stx_api.sysinv.ntp_get(request, obj_id)
class cNTPTable(tables.DataTable):
@ -188,7 +189,7 @@ class UpdateOAMRow(tables.Row):
ajax = True
def get_data(self, request, obj_id):
return api.sysinv.extoam_get(request, obj_id)
return stx_api.sysinv.extoam_get(request, obj_id)
class cOAMTable(tables.DataTable):
@ -243,7 +244,7 @@ class cOAMTable(tables.DataTable):
def __init__(self, request, *args, **kwargs):
super(cOAMTable, self).__init__(request, *args, **kwargs)
if api.sysinv.is_system_mode_simplex(request):
if stx_api.sysinv.is_system_mode_simplex(request):
self.columns['oam_floating_ip'].verbose_name = _('OAM IP')
del self.columns['oam_c0_ip']
del self.columns['oam_c1_ip']
@ -260,7 +261,7 @@ class UpdateStorageRow(tables.Row):
ajax = True
def get_data(self, request):
return api.sysinv.storagefs_list(request)
return stx_api.sysinv.storagefs_list(request)
class iStorageTable(tables.DataTable):
@ -350,7 +351,7 @@ class DeleteSDNController(tables.DeleteAction):
def delete(self, request, obj_id):
try:
api.sysinv.sdn_controller_delete(request, obj_id)
stx_api.sysinv.sdn_controller_delete(request, obj_id)
except exc.ClientException as ce:
# Display REST API error on the GUI
LOG.error(ce)

View File

@ -12,9 +12,11 @@ from horizon import exceptions
from horizon import tabs
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.system_config.address_pools import \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.system_config.address_pools import \
tables as address_pool_tables
from openstack_dashboard.dashboards.admin.system_config \
from starlingx_dashboard.dashboards.admin.system_config \
import tables as toplevel_tables
@ -31,7 +33,7 @@ class SystemsTab(tabs.TableTab):
request = self.request
systems = []
try:
systems = api.sysinv.system_list(request)
systems = stx_api.sysinv.system_list(request)
except Exception:
exceptions.handle(request,
_('Unable to retrieve systems list.'))
@ -48,7 +50,7 @@ class AddressPoolsTab(tabs.TableTab):
request = self.request
pools = []
try:
pools = api.sysinv.address_pool_list(request)
pools = stx_api.sysinv.address_pool_list(request)
except Exception:
exceptions.handle(self.request,
_('Unable to retrieve address pool list.'))
@ -72,7 +74,7 @@ class cDNSTab(tabs.TableTab):
'nameserver_2': ' ',
'nameserver_3': ' '}
dns_list = api.sysinv.dns_list(request)
dns_list = stx_api.sysinv.dns_list(request)
if dns_list:
dns = dns_list[0]
@ -107,7 +109,7 @@ class cNTPTab(tabs.TableTab):
'ntpserver_2': ' ',
'ntpserver_3': ' '}
ntp_list = api.sysinv.ntp_list(request)
ntp_list = stx_api.sysinv.ntp_list(request)
if ntp_list:
ntp = ntp_list[0]
@ -137,7 +139,7 @@ class cEXTOAMTab(tabs.TableTab):
oam_list = []
try:
oam_list = api.sysinv.extoam_list(request)
oam_list = stx_api.sysinv.extoam_list(request)
except Exception:
exceptions.handle(request,
@ -158,7 +160,7 @@ class iStorageTab(tabs.TableTab):
storage_list = []
try:
storage_list = api.sysinv.controllerfs_list(request)
storage_list = stx_api.sysinv.controllerfs_list(request)
except Exception:
exceptions.handle(request,
@ -178,7 +180,7 @@ class iStoragePoolsTab(tabs.TableTab):
storage_list = []
try:
storage_list = api.sysinv.storagepool_list(request)
storage_list = stx_api.sysinv.storagepool_list(request)
except Exception:
exceptions.handle(request,
@ -189,8 +191,8 @@ class iStoragePoolsTab(tabs.TableTab):
def allowed(self, request):
"""Only display the Tab if we have a ceph based setup"""
try:
cinder_backend = api.sysinv.get_cinder_backend(request)
if api.sysinv.CINDER_BACKEND_CEPH in cinder_backend:
cinder_backend = stx_api.sysinv.get_cinder_backend(request)
if stx_api.sysinv.CINDER_BACKEND_CEPH in cinder_backend:
return True
except Exception:
pass
@ -208,7 +210,7 @@ class SDNControllerTab(tabs.TableTab):
controllers = []
try:
controllers = api.sysinv.sdn_controller_list(request)
controllers = stx_api.sysinv.sdn_controller_list(request)
except Exception:
exceptions.handle(request,
@ -219,7 +221,7 @@ class SDNControllerTab(tabs.TableTab):
def allowed(self, request):
"""Only display the Tab if we have a SDN based setup"""
try:
sdn_enabled = api.sysinv.get_sdn_enabled(request)
sdn_enabled = stx_api.sysinv.get_sdn_enabled(request)
return sdn_enabled
except Exception:
return False
@ -244,7 +246,7 @@ class CeilometerConfigTab(tabs.TableTab):
def allowed(self, request):
if request.user.services_region == 'SystemController':
return False
return api.base.is_TiS_region(request)
return stx_api.base.is_stx_region(request)
class ConfigTabs(tabs.TabGroup):

View File

@ -6,29 +6,29 @@
from django.conf.urls import url
from openstack_dashboard.dashboards.admin.system_config.address_pools import \
from starlingx_dashboard.dashboards.admin.system_config.address_pools import \
views as address_pool_views
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
CreateSDNControllerView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
DetailSDNControllerView
from openstack_dashboard.dashboards.admin.system_config.views \
from starlingx_dashboard.dashboards.admin.system_config.views \
import IndexView
from openstack_dashboard.dashboards.admin.system_config.views \
from starlingx_dashboard.dashboards.admin.system_config.views \
import UpdatecDNSView
from openstack_dashboard.dashboards.admin.system_config.views \
from starlingx_dashboard.dashboards.admin.system_config.views \
import UpdatecEXT_OAMView
from openstack_dashboard.dashboards.admin.system_config.views \
from starlingx_dashboard.dashboards.admin.system_config.views \
import UpdatecNTPView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
UpdateiStoragePoolsView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
UpdateiStorageView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
UpdatePipelineView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
UpdateSDNControllerView
from openstack_dashboard.dashboards.admin.system_config.views import \
from starlingx_dashboard.dashboards.admin.system_config.views import \
UpdateSystemView
UUID = r'^(?P<uuid>[^/]+)/%s$'

View File

@ -16,27 +16,29 @@ from horizon import tables
from horizon import tabs
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.admin.system_config.forms \
import CreateSDNController
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import EditPipeline
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdatecDNS
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdatecEXT_OAM
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdatecNTP
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdateiStorage
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdateiStoragePools
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdateSDNController
from openstack_dashboard.dashboards.admin.system_config.forms \
from starlingx_dashboard.dashboards.admin.system_config.forms \
import UpdateSystem
from openstack_dashboard.dashboards.admin.system_config.tables \
from starlingx_dashboard.dashboards.admin.system_config.tables \
import SDNControllerTable
from openstack_dashboard.dashboards.admin.system_config.tabs \
from starlingx_dashboard.dashboards.admin.system_config.tabs \
import ConfigTabs
@ -65,7 +67,7 @@ class UpdateSystemView(forms.ModalFormView):
def get_initial(self):
try:
system = api.sysinv.system_get(self.request)
system = stx_api.sysinv.system_get(self.request)
except Exception:
exceptions.handle(self.request,
_("Unable to retrieve system data."))
@ -82,7 +84,7 @@ class UpdatecDNSView(forms.ModalFormView):
def get_context_data(self, **kwargs):
context = super(UpdatecDNSView, self).get_context_data(**kwargs)
dns_list = api.sysinv.dns_list(self.request)
dns_list = stx_api.sysinv.dns_list(self.request)
if dns_list:
if "uuid" in dns_list[0]._attrs:
@ -105,7 +107,7 @@ class UpdatecDNSView(forms.ModalFormView):
'NAMESERVER_3': None}
try:
dns_list = api.sysinv.dns_list(self.request)
dns_list = stx_api.sysinv.dns_list(self.request)
if dns_list:
dns = dns_list[0]
@ -130,7 +132,7 @@ class UpdatecNTPView(forms.ModalFormView):
def get_context_data(self, **kwargs):
context = super(UpdatecNTPView, self).get_context_data(**kwargs)
ntp_list = api.sysinv.ntp_list(self.request)
ntp_list = stx_api.sysinv.ntp_list(self.request)
if ntp_list:
if "uuid" in ntp_list[0]._attrs:
@ -152,7 +154,7 @@ class UpdatecNTPView(forms.ModalFormView):
'NTP_SERVER_3': None}
try:
ntp_list = api.sysinv.ntp_list(self.request)
ntp_list = stx_api.sysinv.ntp_list(self.request)
if ntp_list:
ntp = ntp_list[0]
@ -177,7 +179,7 @@ class UpdatecEXT_OAMView(forms.ModalFormView):
def get_context_data(self, **kwargs):
context = super(UpdatecEXT_OAMView, self).get_context_data(**kwargs)
extoam_list = api.sysinv.extoam_list(self.request)
extoam_list = stx_api.sysinv.extoam_list(self.request)
if extoam_list:
if 'uuid' in extoam_list[0]._attrs:
@ -204,7 +206,7 @@ class UpdatecEXT_OAMView(forms.ModalFormView):
try:
extoam_list = api.sysinv.extoam_list(self.request)
extoam_list = stx_api.sysinv.extoam_list(self.request)
if extoam_list:
if extoam_list[0]:
@ -240,15 +242,15 @@ class UpdateiStorageView(forms.ModalFormView):
def get_context_data(self, **kwargs):
context = super(UpdateiStorageView, self).get_context_data(**kwargs)
if api.sysinv.is_system_mode_simplex(self.request):
if stx_api.sysinv.is_system_mode_simplex(self.request):
context['is_system_mode_simplex'] = True
return context
def get_initial(self):
system = api.sysinv.system_get(self.request)
system = stx_api.sysinv.system_get(self.request)
fs_list = api.sysinv.controllerfs_list(self.request)
fs_list = stx_api.sysinv.controllerfs_list(self.request)
fs_form_data = {fs.name.replace("-", "_"): fs.size for fs in fs_list}
fs_form_data.update({'uuid': system.uuid})
return fs_form_data
@ -263,7 +265,7 @@ class UpdateiStoragePoolsView(forms.ModalFormView):
ctxt = super(UpdateiStoragePoolsView, self).get_context_data(**kwargs)
ctxt['tier_name'] = self.kwargs['tier_name']
storage_list = api.sysinv.storagepool_list(self.request)
storage_list = stx_api.sysinv.storagepool_list(self.request)
ctxt['uuid'] = " "
for s in storage_list:
@ -296,7 +298,7 @@ class UpdateiStoragePoolsView(forms.ModalFormView):
try:
target_tier = self.kwargs['tier_name']
storage_list = api.sysinv.storagepool_list(self.request)
storage_list = stx_api.sysinv.storagepool_list(self.request)
for s in storage_list:
if s.tier_name == target_tier:
@ -341,7 +343,7 @@ class DetailSDNControllerView(tables.DataTableView):
if not hasattr(self, "_object"):
uuid = self.kwargs['uuid']
try:
self._object = api.sysinv.sdn_controller_get(self.request,
self._object = stx_api.sysinv.sdn_controller_get(self.request,
uuid)
except Exception:
redirect = self.failure_url
@ -381,7 +383,7 @@ class UpdateSDNControllerView(forms.ModalFormView):
if not hasattr(self, "_object"):
controller_uuid = self.kwargs['uuid']
try:
self._object = api.sysinv.sdn_controller_get(self.request,
self._object = stx_api.sysinv.sdn_controller_get(self.request,
controller_uuid)
except Exception:
redirect = self.success_url

View File

@ -30,9 +30,11 @@ from horizon import messages
from openstack_dashboard import api
from openstack_dashboard.api import cinder
from starlingx_dashboard.api import nova
from openstack_dashboard.dashboards.project.instances import tables
from starlingx_dashboard.api import nova as stx_nova
class CreateForm(forms.SelfHandlingForm):
name = forms.CharField(max_length="255", label=_("Server Group Name"))
@ -74,6 +76,7 @@ class CreateForm(forms.SelfHandlingForm):
def handle(self, request, data):
try:
project_id = self.request.user.tenant_id
policy = data['policy']
policies = []
if policy:
@ -90,8 +93,10 @@ class CreateForm(forms.SelfHandlingForm):
kwargs = {'name': data['name'],
'policies': policies,
'metadata': metadata}
server_group = nova.server_group_create(request, **kwargs)
'metadata': metadata,
'project_id': project_id}
server_group = stx_nova.server_group_create(request, **kwargs)
return server_group
except ValidationError as e:

View File

@ -32,6 +32,7 @@ from openstack_dashboard.dashboards.project.volumes.tables \
import get_attachment_name
from openstack_dashboard.usage import quotas
from starlingx_dashboard.api import nova as stx_nova
DELETABLE_STATES = ("available", "error")
@ -62,7 +63,7 @@ class DeleteServerGroup(tables.DeleteAction):
name = self.table.get_object_display(obj)
try:
nova.server_group_delete(request, obj_id)
stx_nova.server_group_delete(request, obj_id)
except Exception:
msg = _('Unable to delete group "%s" because it is not empty. '
'Either delete the member '
@ -120,7 +121,7 @@ class UpdateRow(tables.Row):
ajax = True
def get_data(self, request, server_group_id):
server_group = nova.server_group_get(request, server_group_id)
server_group = stx_nova.server_group_get(request, server_group_id)
if not server_group.name:
server_group.name = server_group_id
return server_group

View File

@ -23,6 +23,7 @@ from horizon import tabs
from openstack_dashboard.api import nova
from starlingx_dashboard.api import nova as stx_nova
class OverviewTab(tabs.Tab):
name = _("Overview")
@ -33,7 +34,7 @@ class OverviewTab(tabs.Tab):
def get_context_data(self, request):
server_group_id = self.tab_group.kwargs['server_group_id']
try:
server_group = nova.server_group_get(request, server_group_id)
server_group = stx_nova.server_group_get(request, server_group_id)
server_group.members_display = []
for member in server_group.members:
server_group.members_display.append(

View File

@ -1,6 +1,5 @@
{% extends "horizon/common/_modal_form.html" %}
{% load i18n %}
{% load url from future %}
{% block form_id %}attach_volume_form{% endblock %}
{% block form_action %}{% url 'horizon:project:volumes:attach' volume.id %}{% endblock %}

View File

@ -1,5 +1,4 @@
{% load i18n sizeformat parse_date %}
{% load url from future %}
<h3>{% trans "Server Group Overview" %}: {{server_group.name }}</h3>

View File

@ -31,9 +31,9 @@ from horizon import tabs
from openstack_dashboard import api
from openstack_dashboard.usage import quotas
from starlingx_dashboard import api as stx_api
from starlingx_dashboard.dashboards.project.server_groups \
import forms as project_forms
from starlingx_dashboard.dashboards.project.server_groups \
import tables as project_tables
from starlingx_dashboard.dashboards.project.server_groups \
@ -48,7 +48,7 @@ class IndexView(tables.DataTableView):
def get_data(self):
try:
server_groups = api.nova.server_group_list(
server_groups = stx_api.nova.server_group_list(
self.request)
except Exception:
server_groups = []

View File

@ -7,6 +7,4 @@ PANEL_GROUP = 'platform'
# Python panel class of the PANEL to be added.
ADD_PANEL = 'starlingx_dashboard.dashboards.admin.storage_overview.' \
'panel.StorageOverview'
# A list of applications to be added to INSTALLED_APPS.
ADD_INSTALLED_APPS = ['starlingx_dashboard', ]
'panel.StorageOverview'

View File

@ -7,6 +7,4 @@ PANEL_GROUP = 'platform'
# Python panel class of the PANEL to be added.
ADD_PANEL = ('starlingx_dashboard.dashboards.admin.'
'system_config.panel.SystemConfig')
# A list of applications to be added to INSTALLED_APPS.
ADD_INSTALLED_APPS = ['starlingx_dashboard', ]
'system_config.panel.SystemConfig')

View File

@ -8,5 +8,3 @@ PANEL_GROUP = 'compute'
# Python panel class of the PANEL to be added.
ADD_PANEL = \
'starlingx_dashboard.dashboards.admin.server_groups.panel.ServerGroups'
# A list of applications to be added to INSTALLED_APPS.
ADD_INSTALLED_APPS = ['starlingx_dashboard', ]

View File

@ -15,5 +15,3 @@ DISABLED = False
# Python panel class of the PANEL to be added.
ADD_PANEL = 'starlingx_dashboard.dashboards.' \
'dc_admin.cloud_overview.panel.CloudOverview'
# A list of applications to be added to INSTALLED_APPS.
ADD_INSTALLED_APPS = ['starlingx_dashboard', ]