Skip to content

Commit

Permalink
New tabs in VirtualServer, Cluster, CloudHost (#2631)
Browse files Browse the repository at this point in the history
`DNS` tab in:
- `VirtualServer`
- `Cluster`

`SecurityInfo` in:
- `VirtualServer`
- `CloudHost`
  • Loading branch information
xliiv committed Aug 1, 2016
1 parent 6a69261 commit 3636e84
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 13 deletions.
18 changes: 14 additions & 4 deletions src/ralph/data_center/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
Database,
VIP
)
from ralph.data_center.views.ui import DataCenterAssetSecurityInfo
from ralph.data_importer import resources
from ralph.lib.custom_fields.admin import CustomFieldValueAdminMixin
from ralph.lib.table import Table
Expand All @@ -47,11 +46,15 @@
from ralph.networks.models.networks import Network
from ralph.networks.views import NetworkWithTerminatorsView
from ralph.operations.views import OperationViewReadOnlyForExisiting
from ralph.security.views import SecurityInfo
from ralph.supports.models import BaseObjectsSupport

if settings.ENABLE_DNSAAS_INTEGRATION:
from ralph.dns.views import DNSView

class ClusterDNSView(DNSView):
pass


@register(Accessory)
class AccessoryAdmin(RalphAdmin):
Expand Down Expand Up @@ -91,6 +94,8 @@ class ClusterAdmin(CustomFieldValueAdminMixin, RalphAdmin):
list_filter = [
'name', 'type', 'service_env', 'configuration_path', 'status'
]
if settings.ENABLE_DNSAAS_INTEGRATION:
change_views = [ClusterDNSView]

class ClusterBaseObjectInline(RalphTabularInline):
model = BaseObjectCluster
Expand Down Expand Up @@ -196,6 +201,10 @@ class DataCenterAssetOperation(OperationViewReadOnlyForExisiting):
inlines = OperationViewReadOnlyForExisiting.admin_class.inlines


class DataCenterAssetSecurityInfo(SecurityInfo):
url_name = 'datacenter_asset_security_info'


@register(DataCenterAsset)
class DataCenterAssetAdmin(
MulitiAddAdminMixin,
Expand Down Expand Up @@ -241,9 +250,10 @@ class DataCenterAssetAdmin(
'order_no', 'model__name',
('model__category', RelatedAutocompleteFieldListFilter), 'service_env',
('configuration_path__module', TreeRelatedAutocompleteFilterWithDescendants), # noqa
'depreciation_end_date', 'force_depreciation', 'remarks', 'budget_info',
'rack', 'rack__server_room', 'rack__server_room__data_center',
'position', 'property_of', LiquidatedStatusFilter, IPFilter,
'depreciation_end_date', 'force_depreciation', 'remarks',
'budget_info', 'rack', 'rack__server_room',
'rack__server_room__data_center', 'position', 'property_of',
LiquidatedStatusFilter, IPFilter,
('tags', TagsListFilter)
]
date_hierarchy = 'created'
Expand Down
Empty file.
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,16 @@
from ralph.security.models import SecurityScan


class DataCenterAssetSecurityInfo(
RalphDetailView
):
class SecurityInfo(RalphDetailView):

icon = 'lock'
label = 'Security Info'
name = 'security_info'
url_name = 'datacenter_asset_security_info'
url_name = None
template_name = 'security/securityinfo/security_info.html'

def get_context_data(self, **kwargs):
context = super(DataCenterAssetSecurityInfo, self).get_context_data(
**kwargs
)
context = super().get_context_data(**kwargs)
context['security_scan'] = SecurityScan.objects.filter(
base_object=self.object).last()
return context
29 changes: 27 additions & 2 deletions src/ralph/virtual/admin.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
# -*- coding: utf-8 -*-
from django.conf import settings
from django.core.urlresolvers import reverse
from django.db.models import Count
from django.utils.translation import ugettext_lazy as _

from ralph.admin import RalphAdmin, RalphAdminForm, RalphTabularInline, register

from ralph.admin.filters import (
IPFilter,
TagsListFilter,
Expand All @@ -16,6 +18,7 @@
from ralph.lib.transitions.admin import TransitionAdminMixin
from ralph.networks.forms import SimpleNetworkForm
from ralph.networks.views import NetworkView
from ralph.security.views import SecurityInfo
from ralph.virtual.models import (
CloudFlavor,
CloudHost,
Expand All @@ -25,6 +28,20 @@
VirtualServerType
)

if settings.ENABLE_DNSAAS_INTEGRATION:
from ralph.dns.views import DNSView

class VirtualServerDNSView(DNSView):
namespace = None


class VirtaulServerSecurityInfoView(SecurityInfo):
url_name = 'security_virtualserver_security_info'


class CloudHostSecurityInfoView(SecurityInfo):
url_name = 'security_cloudhost_security_info'


@register(VirtualServerType)
class VirtualServerTypeForm(RalphAdmin):
Expand Down Expand Up @@ -69,7 +86,12 @@ class VirtualServerAdmin(
'configuration_path__module'
]

change_views = [VirtualServerNetworkView]
change_views = [
VirtualServerNetworkView,
VirtaulServerSecurityInfoView,
]
if settings.ENABLE_DNSAAS_INTEGRATION:
change_views += [VirtualServerDNSView]

# TODO: add the same tabs as in DCAsset
class ClusterBaseObjectInline(RalphTabularInline):
Expand Down Expand Up @@ -166,6 +188,9 @@ class CloudHostAdmin(CustomFieldValueAdminMixin, RalphAdmin):
search_fields = ['cloudflavor__name', 'hostname', 'host_id']
raw_id_override_parent = {'parent': CloudProject}
inlines = [CloudNetworkInline]
change_views = [
CloudHostSecurityInfoView
]
fieldsets = (
(None, {
'fields': ['hostname', 'get_hypervisor', 'host_id', 'created',
Expand Down Expand Up @@ -257,7 +282,7 @@ def get_memory(self, obj):
get_memory.short_description = _('RAM size (MiB)')

def get_disk(self, obj):
return obj.cloudflavor.disk / 1024
return obj.cloudflavor.disk / 1024 if obj.cloudflavor.disk else None
get_disk.short_description = _('Disk size (GiB)')


Expand Down

0 comments on commit 3636e84

Please sign in to comment.