From 56735f8a6b09b34d7aed42b25b029684deffe054 Mon Sep 17 00:00:00 2001 From: Rohit Yadav Date: Wed, 14 Aug 2019 19:43:43 +0530 Subject: [PATCH] add columns/order for most cloud resources Signed-off-by: Rohit Yadav --- ui/src/config/section/compute.js | 38 ++++++++++++++++++++++++++++---- ui/src/config/section/iam.js | 12 ++++++---- ui/src/config/section/image.js | 6 +++-- ui/src/config/section/infra.js | 12 ++++++---- ui/src/config/section/monitor.js | 6 +++-- ui/src/config/section/network.js | 15 ++++++++----- ui/src/config/section/project.js | 3 ++- ui/src/config/section/storage.js | 6 ++--- 8 files changed, 73 insertions(+), 25 deletions(-) diff --git a/ui/src/config/section/compute.js b/ui/src/config/section/compute.js index b71f8224570..ec879c74f66 100644 --- a/ui/src/config/section/compute.js +++ b/ui/src/config/section/compute.js @@ -10,11 +10,11 @@ export default { permission: [ 'listVirtualMachinesMetrics', 'listVirtualMachines' ], component: () => import('@/components/CloudMonkey/Resource.vue'), columns: [ - 'name', 'instancename', 'state', 'nic[].ipaddress', 'zonename', 'account', 'domain', + 'displayname', 'state', { 'ipaddress': (record) => { return record.nic[0].ipaddress } }, 'instancename', 'account', 'zonename', 'cpunumber', 'cpuused', 'cputotal', 'memoryintfreekbs', 'memorytotal', 'networkread', 'networkwrite', 'diskkbsread', 'diskkbswrite', 'diskiopstotal' ], - hidden: ['zonename', 'account', 'domain'], + hidden: ['instancename', 'account'], actions: [ { api: 'deployVirtualMachine', @@ -48,14 +48,44 @@ export default { title: 'SSH Keys', icon: 'key', permission: [ 'listSSHKeyPairs' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'fingerprint', 'account', 'domain'], + actions: [ + { + api: 'createSSHKeyPair', + icon: 'plus', + label: 'Create SSH key pair', + params: ['name', 'publickey', 'domainid'] + }, + { + api: 'deleteSSHKeyPair', + icon: 'delete', + label: 'Delete SSH key pair', + params: ['name', 'domainid', 'account'] + } + ] }, { name: 'affinitygroups', title: 'Affinity Groups', icon: 'swap', permission: [ 'listAffinityGroups' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'type', 'description', 'account', 'domain'], + actions: [ + { + api: 'createAffinityGroup', + icon: 'plus', + label: 'New Affinity Group', + params: ['name', 'description', 'type'] + }, + { + api: 'deleteAffinityGroup', + icon: 'delete', + label: 'Delete Affinity Group', + params: ['id'] + } + ] } ] } diff --git a/ui/src/config/section/iam.js b/ui/src/config/section/iam.js index 4b9f093ea3e..8e6bbf006ad 100644 --- a/ui/src/config/section/iam.js +++ b/ui/src/config/section/iam.js @@ -9,28 +9,32 @@ export default { title: 'Users', icon: 'user', permission: [ 'listUsers' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['username', 'state', 'firstname', 'lastname', 'email', 'account', 'domain'] }, { name: 'account', title: 'Accounts', icon: 'team', permission: [ 'listAccounts' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'firstname', 'lastname', 'rolename', 'roletype', 'domain'] }, { name: 'domain', title: 'Domains', icon: 'block', permission: [ 'listDomains' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'path', 'parentdomainname', 'level'] }, { name: 'role', title: 'Roles', icon: 'idcard', permission: [ 'listRoles' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'type', 'description'] } ] } diff --git a/ui/src/config/section/image.js b/ui/src/config/section/image.js index 2fe31b12643..b678f7319eb 100644 --- a/ui/src/config/section/image.js +++ b/ui/src/config/section/image.js @@ -9,14 +9,16 @@ export default { icon: 'save', permission: [ 'listTemplates' ], params: { 'templatefilter': 'executable' }, - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'ostypename', 'status', 'hypervisor', 'account', 'domain'] }, { name: 'iso', title: 'ISOs', icon: 'usb', permission: [ 'listIsos' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'ostypename', 'account', 'domain'] } ] } diff --git a/ui/src/config/section/infra.js b/ui/src/config/section/infra.js index bf7247b7e68..fce0dd06438 100644 --- a/ui/src/config/section/infra.js +++ b/ui/src/config/section/infra.js @@ -9,21 +9,24 @@ export default { title: 'Zones', icon: 'table', permission: [ 'listZones', 'listZonesMetrics' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'allocationstate', 'networktype', 'guestcidraddress' ] }, { name: 'pod', title: 'Pods', icon: 'appstore', permission: [ 'listPods' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'allocationstate', 'gateway', 'netmask', 'zonename' ] }, { name: 'cluster', title: 'Clusters', icon: 'cluster', permission: [ 'listClusters', 'listClustersMetrics' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'allocationstate', 'clustertype', 'hypervisortype', 'podname', 'zonename' ] }, { name: 'host', @@ -31,7 +34,8 @@ export default { icon: 'desktop', permission: [ 'listHosts', 'listHostsMetrics' ], params: { 'type': 'routing' }, - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'resourcestate', 'ipaddress', 'hypervisor', 'hypervisorversion', 'clustername', 'zonename'] }, { name: 'storagepool', diff --git a/ui/src/config/section/monitor.js b/ui/src/config/section/monitor.js index 648833a00e3..d71705bd068 100644 --- a/ui/src/config/section/monitor.js +++ b/ui/src/config/section/monitor.js @@ -9,14 +9,16 @@ export default { title: 'Events', icon: 'schedule', permission: [ 'listEvents' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['description', 'state', 'level', 'type', 'account', 'domain', 'created'] }, { name: 'alert', title: 'Alerts', icon: 'flag', permission: [ 'listAlerts' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['description', 'type', 'sent'] } ] } diff --git a/ui/src/config/section/network.js b/ui/src/config/section/network.js index a5f1ddbb3f6..9dd93dcaf00 100644 --- a/ui/src/config/section/network.js +++ b/ui/src/config/section/network.js @@ -8,35 +8,40 @@ export default { title: 'Guest Networks', icon: 'gateway', permission: [ 'listNetworks' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'type', 'cidr', 'ip6cidr', 'broadcasturi', 'account', 'zonename'] }, { name: 'vpc', title: 'VPCs', icon: 'deployment-unit', permission: [ 'listVPCs' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'displaytext', 'cidr', 'account', 'zonename'] }, { name: 'securitygroups', title: 'Security Groups', icon: 'fire', permission: [ 'listSecurityGroups' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'description', 'account', 'domain'] }, { name: 'publicip', title: 'Public IP Addresses', icon: 'environment', permission: [ 'listPublicIpAddresses' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['ipaddress', 'state', 'associatednetworkname', 'virtualmachinename', 'allocated', 'account', 'zonename'] }, { name: 'vpngateway', title: 'VPN Gateways', icon: 'lock', permission: [ 'listVpnCustomerGateways' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'ipaddress', 'gateway', 'cidrlist', 'ipsecpsk', 'account', 'domain'] } ] } diff --git a/ui/src/config/section/project.js b/ui/src/config/section/project.js index 29c8cc59590..07647881131 100644 --- a/ui/src/config/section/project.js +++ b/ui/src/config/section/project.js @@ -3,5 +3,6 @@ export default { title: 'Projects', icon: 'project', permission: [ 'listProjects' ], - component: () => import('@/components/CloudMonkey/Resource.vue') + component: () => import('@/components/CloudMonkey/Resource.vue'), + columns: ['name', 'state', 'displaytext', 'account', 'domain'] } diff --git a/ui/src/config/section/storage.js b/ui/src/config/section/storage.js index 08b10138de6..9d33e5cef84 100644 --- a/ui/src/config/section/storage.js +++ b/ui/src/config/section/storage.js @@ -9,7 +9,7 @@ export default { icon: 'hdd', permission: [ 'listVolumesMetrics', 'listVolumes' ], component: () => import('@/components/CloudMonkey/Resource.vue'), - columns: ['name', 'state', 'type', 'vmname', 'size', 'physicalsize', 'utilization', 'storage', 'hypervisor', 'account', 'domain', 'zonename'], + columns: ['name', 'state', 'type', 'vmname', 'size', 'physicalsize', 'utilization', 'storage', 'hypervisor', 'account', 'zonename'], hidden: ['storage', 'utilization'], actions: [ { @@ -74,7 +74,7 @@ export default { icon: 'build', permission: [ 'listSnapshots' ], component: () => import('@/components/CloudMonkey/Resource.vue'), - columns: ['volumename', 'name', 'state', 'intervaltype', 'created', 'account', 'domain'] + columns: ['name', 'state', 'volumename', 'intervaltype', 'created', 'account'] }, { name: 'vmsnapshot', @@ -82,7 +82,7 @@ export default { icon: 'camera', permission: [ 'listVMSnapshot' ], component: () => import('@/components/CloudMonkey/Resource.vue'), - columns: ['name', 'state', 'type', 'current', 'parent', 'created', 'account', 'domain'] + columns: ['name', 'state', 'type', 'current', 'parent', 'created', 'account'] } ] }