--- a/components/openstack/horizon/files/overrides.py Wed Sep 07 14:48:42 2016 -0700
+++ b/components/openstack/horizon/files/overrides.py Wed Sep 07 14:48:42 2016 -0700
@@ -26,39 +26,40 @@
from openstack_dashboard import api
from openstack_dashboard.dashboards.admin.instances.forms import \
LiveMigrateForm
-from openstack_dashboard.dashboards.admin.instances import tables \
- as admin_tables
-from openstack_dashboard.dashboards.admin.networks.forms import CreateNetwork
-from openstack_dashboard.dashboards.admin.networks.ports.forms import \
- CreatePort
-from openstack_dashboard.dashboards.admin.networks.ports.tables import \
- DeletePort, PortsTable
-from openstack_dashboard.dashboards.admin.networks.subnets.tables import \
- DeleteSubnet, SubnetsTable
-from openstack_dashboard.dashboards.admin.networks.tables import \
- DeleteNetwork, NetworksTable
+from openstack_dashboard.dashboards.admin.instances.tables import \
+ AdminInstancesTable, MigrateInstance
from openstack_dashboard.dashboards.project.access_and_security.tabs import \
AccessAndSecurityTabs, APIAccessTab, FloatingIPsTab, KeypairsTab
from openstack_dashboard.dashboards.project.images.images.tables import \
- EditImage, DeleteImage, ImagesTable, LaunchImage
+ ImagesTable, CreateVolumeFromImage
from openstack_dashboard.dashboards.project.instances import tables \
as project_tables
+from openstack_dashboard.dashboards.project.instances.tables import \
+ InstancesTable, TogglePause, EditInstanceSecurityGroups
from openstack_dashboard.dashboards.project.instances.workflows import \
create_instance, update_instance
-from openstack_dashboard.dashboards.project.networks.ports.tables import \
- PortsTable as projectPortsTable
-from openstack_dashboard.dashboards.project.networks.subnets.tables import \
- DeleteSubnet as projectDeleteSubnet
-from openstack_dashboard.dashboards.project.networks.subnets.tables import \
- SubnetsTable as projectSubnetsTable
-from openstack_dashboard.dashboards.project.networks.tables import \
- CreateSubnet as projectCreateSubnet
-from openstack_dashboard.dashboards.project.networks.tables import \
- DeleteNetwork as projectDeleteNetwork
-from openstack_dashboard.dashboards.project.networks.tables import \
- NetworksTable as projectNetworksTable
-from openstack_dashboard.dashboards.project.networks.workflows import \
- CreateNetworkInfoAction, CreateSubnetDetailAction
+
+
+# Remove Security Groups from the LaunchInstance workflow
+
+class SolarisSetAccessControlsAction(create_instance.SetAccessControlsAction):
+ def __init__(self, request, *args, **kwargs):
+ super(SolarisSetAccessControlsAction, self).__init__(request,
+ *args,
+ **kwargs)
+
+ del self.fields['groups']
+
+ class Meta(object):
+ name = _("Access & Security")
+ help_text = _("Control access to your instance via key pairs, "
+ "and other mechanisms.")
+
+ def populate_groups_choices(self, request, context):
+ return []
+
+create_instance.SetAccessControls.action_class = SolarisSetAccessControlsAction
+
# Bootargs feature:
# Add bootargs feature to 'SetAdvanced' workflow action.
@@ -120,11 +121,6 @@
create_instance.SetAdvanced,
)
-# Disable 'Security Groups' in Project/Instances/Launch Instance/Access &
-# Security. Note that this is unchecked by default.
-groups_widget = create_instance.SetAccessControlsAction.base_fields['groups']
-groups_widget.widget.attrs['disabled'] = True
-
# Bootargs feature:
# Add bootargs feature to 'UpdateInstance' workflow action class.
@@ -191,48 +187,24 @@
# Remove 'TogglePause', 'MigrateInstance' actions from
# Admin/System/Instances/Actions
-admin_tables.AdminInstancesTable._meta.row_actions = (
- project_tables.ConfirmResize,
- project_tables.RevertResize,
- admin_tables.AdminEditInstance,
- project_tables.ConsoleLink,
- project_tables.LogLink,
- project_tables.CreateSnapshot,
- project_tables.ToggleSuspend,
- admin_tables.LiveMigrateInstance,
- project_tables.SoftRebootInstance,
- project_tables.RebootInstance,
- project_tables.TerminateInstance
-)
+temp = list(AdminInstancesTable._meta.row_actions)
+temp.remove(MigrateInstance)
+temp.remove(TogglePause)
+AdminInstancesTable._meta.row_actions = tuple(temp)
# Remove 'EditInstanceSecurityGroups', 'TogglePause' actions from
# Project/Compute/Instances/Actions
-project_tables.InstancesTable._meta.row_actions = (
- project_tables.StartInstance,
- project_tables.ConfirmResize,
- project_tables.RevertResize,
- project_tables.CreateSnapshot,
- project_tables.SimpleAssociateIP,
- project_tables.AssociateIP,
- project_tables.SimpleDisassociateIP,
- project_tables.EditInstance,
- project_tables.DecryptInstancePassword,
- project_tables.ConsoleLink,
- project_tables.LogLink,
- project_tables.ResizeLink,
- project_tables.ToggleSuspend,
- project_tables.SoftRebootInstance,
- project_tables.RebootInstance,
- project_tables.StopInstance,
- project_tables.RebuildInstance,
- project_tables.TerminateInstance
-)
+temp = list(InstancesTable._meta.row_actions)
+temp.remove(EditInstanceSecurityGroups)
+temp.remove(TogglePause)
+InstancesTable._meta.row_actions = tuple(temp)
# Bootargs feature:
# If locally configured to do so add 'EditBootargs' to
# Project/Compute/Instances/Actions
if getattr(settings, 'SOLARIS_BOOTARGS', True):
- project_tables_row_actions = project_tables.InstancesTable._meta.row_actions
+ project_tables_row_actions = \
+ project_tables.InstancesTable._meta.row_actions
pos = project_tables.InstancesTable._meta.row_actions.index(
project_tables.ConsoleLink
)
@@ -247,51 +219,7 @@
LiveMigrateForm.base_fields['disk_over_commit'].widget.attrs['disabled'] = True
LiveMigrateForm.base_fields['block_migration'].widget.attrs['disabled'] = True
-# Disable 'admin_state' in Admin/System/Networks/Create Network
-admin_state = CreateNetwork.base_fields['admin_state']
-admin_state.widget.attrs['disabled'] = True
-admin_state.widget.value_from_datadict = lambda *args: True
-
-# Disable 'shared' in Admin/System/Networks/Create Network. Note that this is
-# unchecked by default.
-CreateNetwork.base_fields['shared'].widget.attrs['disabled'] = True
-
-# Disable 'admin_state' in Admin/System/Networks/Network Name/Create Port
-admin_state = CreatePort.base_fields['admin_state']
-admin_state.widget.attrs['disabled'] = True
-admin_state.widget.value_from_datadict = lambda *args: True
-
-# Remove 'UpdatePort' action from Admin/System/Networks/Network Name/Actions
-PortsTable._meta.row_actions = (DeletePort,)
-
-# Remove 'UpdateSubnet' action from
-# Admin/System/Networks/Network Name/Subnets/Actions
-SubnetsTable._meta.row_actions = (DeleteSubnet,)
-
-# Remove the 'EditNetwork' action from Admin/System/Networks/Actions
-NetworksTable._meta.row_actions = (DeleteNetwork,)
-
-# Remove the 'UpdatePort' action from
-# Project/Network/Networks/Name/Ports/Actions
-projectPortsTable._meta.row_actions = ()
-
-# Remove the 'UpdateSubnet' action from
-# Project/Network/Networks/Name/Subnets/Actions
-projectSubnetsTable._meta.row_actions = (projectDeleteSubnet,)
-
-# Remove the 'EditNetwork' action from Project/Network/Networks/Actions
-projectNetworksTable._meta.row_actions = (projectCreateSubnet,
- projectDeleteNetwork)
-
-# Disable 'admin_state' in Project/Network/Networks/Create Network/Network
-admin_state = CreateNetworkInfoAction.base_fields['admin_state']
-admin_state.widget.attrs['disabled'] = True
-admin_state.widget.value_from_datadict = lambda *args: True
-
# Remove 'CreateVolumeFromImage' checkbox from Project/Compute/Images/Actions
-ImagesTable._meta.row_actions = (LaunchImage, EditImage, DeleteImage,)
-
-# Change 'host_routes' field to read-only in
-# Project/Network/Networks/Create Network/Subnet Detail
-base_fields = CreateSubnetDetailAction.base_fields
-base_fields['host_routes'].widget.attrs['readonly'] = 'readonly'
+temp = list(ImagesTable._meta.row_actions)
+temp.remove(CreateVolumeFromImage)
+ImagesTable._meta.row_actions = tuple(temp)