sections: add doc links (#435)

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
davidjumani 2020-06-22 08:31:48 +00:00 committed by Rohit Yadav
parent 92e0c5a405
commit f70fc408be
23 changed files with 138 additions and 0 deletions

View File

@ -19,6 +19,7 @@ export default {
name: 'account', name: 'account',
title: 'label.accounts', title: 'label.accounts',
icon: 'team', icon: 'team',
docHelp: 'adminguide/accounts.html',
permission: ['listAccounts'], permission: ['listAccounts'],
columns: ['name', 'state', 'rolename', 'roletype', 'domainpath'], columns: ['name', 'state', 'rolename', 'roletype', 'domainpath'],
details: ['name', 'id', 'rolename', 'roletype', 'domainpath', 'networkdomain', 'iptotal', 'vmtotal', 'volumetotal', 'receivedbytes', 'sentbytes', 'vmlimit', 'iplimit', 'volumelimit', 'snapshotlimit', 'templatelimit', 'vpclimit', 'cpulimit', 'memorylimit', 'networklimit', 'primarystoragelimit', 'secondarystoragelimit'], details: ['name', 'id', 'rolename', 'roletype', 'domainpath', 'networkdomain', 'iptotal', 'vmtotal', 'volumetotal', 'receivedbytes', 'sentbytes', 'vmlimit', 'iplimit', 'volumelimit', 'snapshotlimit', 'templatelimit', 'vpclimit', 'cpulimit', 'memorylimit', 'networklimit', 'primarystoragelimit', 'secondarystoragelimit'],
@ -59,6 +60,7 @@ export default {
api: 'ldapCreateAccount', api: 'ldapCreateAccount',
icon: 'user-add', icon: 'user-add',
label: 'label.add.ldap.account', label: 'label.add.ldap.account',
docHelp: 'adminguide/accounts.html#using-an-ldap-server-for-user-authentication',
listView: true, listView: true,
popup: true, popup: true,
show: (record, store) => { show: (record, store) => {

View File

@ -87,6 +87,7 @@ export default {
api: 'deployVirtualMachine', api: 'deployVirtualMachine',
icon: 'plus', icon: 'plus',
label: 'label.vm.add', label: 'label.vm.add',
docHelp: 'adminguide/virtual_machines.html#creating-vms',
listView: true, listView: true,
component: () => import('@/views/compute/DeployVM.vue') component: () => import('@/views/compute/DeployVM.vue')
}, },
@ -94,6 +95,7 @@ export default {
api: 'updateVirtualMachine', api: 'updateVirtualMachine',
icon: 'edit', icon: 'edit',
label: 'label.action.edit.instance', label: 'label.action.edit.instance',
docHelp: 'adminguide/virtual_machines.html#changing-the-vm-name-os-or-group',
dataView: true, dataView: true,
args: ['name', 'displayname', 'ostypeid', 'isdynamicallyscalable', 'haenable', 'group'], args: ['name', 'displayname', 'ostypeid', 'isdynamicallyscalable', 'haenable', 'group'],
show: (record) => { return ['Stopped'].includes(record.state) } show: (record) => { return ['Stopped'].includes(record.state) }
@ -137,6 +139,7 @@ export default {
icon: 'reload', icon: 'reload',
label: 'label.action.reboot.instance', label: 'label.action.reboot.instance',
message: 'message.action.reboot.instance', message: 'message.action.reboot.instance',
docHelp: 'adminguide/virtual_machines.html#stopping-and-starting-vms',
dataView: true, dataView: true,
show: (record) => { return ['Running'].includes(record.state) }, show: (record) => { return ['Running'].includes(record.state) },
args: (record, store) => { args: (record, store) => {
@ -154,6 +157,7 @@ export default {
icon: 'sync', icon: 'sync',
label: 'label.reinstall.vm', label: 'label.reinstall.vm',
message: 'message.reinstall.vm', message: 'message.reinstall.vm',
docHelp: 'adminguide/virtual_machines.html#virtual-machine-snapshots',
dataView: true, dataView: true,
args: ['virtualmachineid', 'templateid'], args: ['virtualmachineid', 'templateid'],
show: (record) => { return ['Running', 'Stopped'].includes(record.state) }, show: (record) => { return ['Running', 'Stopped'].includes(record.state) },
@ -167,6 +171,7 @@ export default {
api: 'createVMSnapshot', api: 'createVMSnapshot',
icon: 'camera', icon: 'camera',
label: 'label.action.vmsnapshot.create', label: 'label.action.vmsnapshot.create',
docHelp: 'adminguide/virtual_machines.html#virtual-machine-snapshots',
dataView: true, dataView: true,
args: ['virtualmachineid', 'name', 'description', 'snapshotmemory', 'quiescevm'], args: ['virtualmachineid', 'name', 'description', 'snapshotmemory', 'quiescevm'],
show: (record) => { show: (record) => {
@ -184,6 +189,7 @@ export default {
icon: 'folder-add', icon: 'folder-add',
label: 'label.backup.offering.assign', label: 'label.backup.offering.assign',
message: 'label.backup.offering.assign', message: 'label.backup.offering.assign',
docHelp: 'adminguide/virtual_machines.html#backup-offerings',
dataView: true, dataView: true,
args: ['virtualmachineid', 'backupofferingid'], args: ['virtualmachineid', 'backupofferingid'],
show: (record) => { return !record.backupofferingid }, show: (record) => { return !record.backupofferingid },
@ -197,6 +203,7 @@ export default {
api: 'createBackup', api: 'createBackup',
icon: 'cloud-upload', icon: 'cloud-upload',
label: 'label.create.backup', label: 'label.create.backup',
docHelp: 'adminguide/virtual_machines.html#creating-vm-backups',
dataView: true, dataView: true,
args: ['virtualmachineid'], args: ['virtualmachineid'],
show: (record) => { return record.backupofferingid }, show: (record) => { return record.backupofferingid },
@ -210,6 +217,7 @@ export default {
api: 'createBackupSchedule', api: 'createBackupSchedule',
icon: 'schedule', icon: 'schedule',
label: 'Configure Backup Schedule', label: 'Configure Backup Schedule',
docHelp: 'adminguide/virtual_machines.html#creating-vm-backups',
dataView: true, dataView: true,
popup: true, popup: true,
show: (record) => { return record.backupofferingid }, show: (record) => { return record.backupofferingid },
@ -228,6 +236,7 @@ export default {
icon: 'scissor', icon: 'scissor',
label: 'label.backup.offering.remove', label: 'label.backup.offering.remove',
message: 'label.backup.offering.remove', message: 'label.backup.offering.remove',
docHelp: 'adminguide/virtual_machines.html#restoring-vm-backups',
dataView: true, dataView: true,
args: ['virtualmachineid', 'forced'], args: ['virtualmachineid', 'forced'],
show: (record) => { return record.backupofferingid }, show: (record) => { return record.backupofferingid },
@ -241,6 +250,7 @@ export default {
api: 'attachIso', api: 'attachIso',
icon: 'paper-clip', icon: 'paper-clip',
label: 'label.action.attach.iso', label: 'label.action.attach.iso',
docHelp: 'adminguide/templates.html#attaching-an-iso-to-a-vm',
dataView: true, dataView: true,
args: ['id', 'virtualmachineid'], args: ['id', 'virtualmachineid'],
show: (record) => { return ['Running', 'Stopped'].includes(record.state) && !record.isoid }, show: (record) => { return ['Running', 'Stopped'].includes(record.state) && !record.isoid },
@ -272,6 +282,7 @@ export default {
api: 'updateVMAffinityGroup', api: 'updateVMAffinityGroup',
icon: 'swap', icon: 'swap',
label: 'label.change.affinity', label: 'label.change.affinity',
docHelp: 'adminguide/virtual_machines.html#change-affinity-group-for-an-existing-vm',
dataView: true, dataView: true,
args: ['affinitygroupids'], args: ['affinitygroupids'],
show: (record) => { return ['Stopped'].includes(record.state) } show: (record) => { return ['Stopped'].includes(record.state) }
@ -281,6 +292,7 @@ export default {
icon: 'arrows-alt', icon: 'arrows-alt',
// label: label.change.service.offering // label: label.change.service.offering
label: 'Scale VM', label: 'Scale VM',
docHelp: 'adminguide/virtual_machines.html#how-to-dynamically-scale-cpu-and-ram',
dataView: true, dataView: true,
args: ['serviceofferingid', 'details'], args: ['serviceofferingid', 'details'],
show: (record) => { return ['Running'].includes(record.state) && record.hypervisor !== 'KVM' && record.hypervisor !== 'LXC' } show: (record) => { return ['Running'].includes(record.state) && record.hypervisor !== 'KVM' && record.hypervisor !== 'LXC' }
@ -289,6 +301,7 @@ export default {
api: 'changeServiceForVirtualMachine', api: 'changeServiceForVirtualMachine',
icon: 'sliders', icon: 'sliders',
label: 'label.change.service.offering', label: 'label.change.service.offering',
docHelp: 'adminguide/virtual_machines.html#changing-the-service-offering-for-a-vm',
dataView: true, dataView: true,
args: ['serviceofferingid'], args: ['serviceofferingid'],
show: (record) => { return ['Stopped'].includes(record.state) || (['Running'].includes(record.state) && record.hypervisor !== 'KVM' && record.hypervisor !== 'LXC') } show: (record) => { return ['Stopped'].includes(record.state) || (['Running'].includes(record.state) && record.hypervisor !== 'KVM' && record.hypervisor !== 'LXC') }
@ -297,6 +310,7 @@ export default {
api: 'migrateVirtualMachine', api: 'migrateVirtualMachine',
icon: 'drag', icon: 'drag',
label: 'label.migrate.instance.to.host', label: 'label.migrate.instance.to.host',
docHelp: 'adminguide/virtual_machines.html#moving-vms-between-hosts-manual-live-migration',
dataView: true, dataView: true,
show: (record, store) => { return ['Running'].includes(record.state) && ['Admin'].includes(store.userInfo.roletype) }, show: (record, store) => { return ['Running'].includes(record.state) && ['Admin'].includes(store.userInfo.roletype) },
component: () => import('@/views/compute/MigrateWizard'), component: () => import('@/views/compute/MigrateWizard'),
@ -313,6 +327,7 @@ export default {
icon: 'drag', icon: 'drag',
label: 'label.migrate.instance.to.ps', label: 'label.migrate.instance.to.ps',
message: 'message.migrate.instance.to.ps', message: 'message.migrate.instance.to.ps',
docHelp: 'adminguide/virtual_machines.html#moving-vms-between-hosts-manual-live-migration',
dataView: true, dataView: true,
show: (record, store) => { return ['Stopped'].includes(record.state) && ['Admin'].includes(store.userInfo.roletype) }, show: (record, store) => { return ['Stopped'].includes(record.state) && ['Admin'].includes(store.userInfo.roletype) },
args: ['storageid', 'virtualmachineid'], args: ['storageid', 'virtualmachineid'],
@ -340,6 +355,7 @@ export default {
icon: 'lock', icon: 'lock',
label: 'label.reset.ssh.key.pair', label: 'label.reset.ssh.key.pair',
message: 'message.desc.reset.ssh.key.pair', message: 'message.desc.reset.ssh.key.pair',
docHelp: 'adminguide/virtual_machines.html#resetting-ssh-keys',
dataView: true, dataView: true,
args: ['keypair', 'account', 'domainid'], args: ['keypair', 'account', 'domainid'],
show: (record) => { return ['Running', 'Stopped'].includes(record.state) }, show: (record) => { return ['Running', 'Stopped'].includes(record.state) },
@ -386,6 +402,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.expunge.instance', label: 'label.action.expunge.instance',
message: 'message.action.expunge.instance', message: 'message.action.expunge.instance',
docHelp: 'adminguide/virtual_machines.html#deleting-vms',
dataView: true, dataView: true,
show: (record, store) => { return ['Destroyed', 'Expunging'].includes(record.state) && store.features.allowuserexpungerecovervm } show: (record, store) => { return ['Destroyed', 'Expunging'].includes(record.state) && store.features.allowuserexpungerecovervm }
}, },
@ -394,6 +411,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.destroy.instance', label: 'label.action.destroy.instance',
message: 'message.action.destroy.instance', message: 'message.action.destroy.instance',
docHelp: 'adminguide/virtual_machines.html#deleting-vms',
args: ['expunge', 'volumeids'], args: ['expunge', 'volumeids'],
mapping: { mapping: {
volumeids: { volumeids: {
@ -411,6 +429,7 @@ export default {
name: 'kubernetes', name: 'kubernetes',
title: 'label.kubernetes', title: 'label.kubernetes',
icon: kubernetes, icon: kubernetes,
docHelp: 'plugins/cloudstack-kubernetes-service.html',
permission: ['listKubernetesClusters'], permission: ['listKubernetesClusters'],
columns: ['name', 'state', 'size', 'cpunumber', 'memory', 'account', 'zonename'], columns: ['name', 'state', 'size', 'cpunumber', 'memory', 'account', 'zonename'],
details: ['name', 'description', 'zonename', 'kubernetesversionname', 'size', 'masternodes', 'cpunumber', 'memory', 'keypair', 'associatednetworkname', 'account', 'domain', 'zonename'], details: ['name', 'description', 'zonename', 'kubernetesversionname', 'size', 'masternodes', 'cpunumber', 'memory', 'keypair', 'associatednetworkname', 'account', 'domain', 'zonename'],
@ -423,6 +442,7 @@ export default {
api: 'createKubernetesCluster', api: 'createKubernetesCluster',
icon: 'plus', icon: 'plus',
label: 'label.kubernetes.cluster.create', label: 'label.kubernetes.cluster.create',
docHelp: 'plugins/cloudstack-kubernetes-service.html#creating-a-new-kubernetes-cluster',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/compute/CreateKubernetesCluster.vue') component: () => import('@/views/compute/CreateKubernetesCluster.vue')
@ -431,6 +451,7 @@ export default {
api: 'startKubernetesCluster', api: 'startKubernetesCluster',
icon: 'caret-right', icon: 'caret-right',
label: 'label.kubernetes.cluster.start', label: 'label.kubernetes.cluster.start',
docHelp: 'plugins/cloudstack-kubernetes-service.html#starting-a-stopped-kubernetes-cluster',
dataView: true, dataView: true,
show: (record) => { return ['Stopped'].includes(record.state) } show: (record) => { return ['Stopped'].includes(record.state) }
}, },
@ -438,6 +459,7 @@ export default {
api: 'stopKubernetesCluster', api: 'stopKubernetesCluster',
icon: 'poweroff', icon: 'poweroff',
label: 'label.kubernetes.cluster.stop', label: 'label.kubernetes.cluster.stop',
docHelp: 'plugins/cloudstack-kubernetes-service.html#stopping-kubernetes-cluster',
dataView: true, dataView: true,
show: (record) => { return !['Stopped'].includes(record.state) } show: (record) => { return !['Stopped'].includes(record.state) }
}, },
@ -445,6 +467,7 @@ export default {
api: 'scaleKubernetesCluster', api: 'scaleKubernetesCluster',
icon: 'swap', icon: 'swap',
label: 'label.kubernetes.cluster.scale', label: 'label.kubernetes.cluster.scale',
docHelp: 'plugins/cloudstack-kubernetes-service.html#scaling-kubernetes-cluster',
dataView: true, dataView: true,
show: (record) => { return ['Created', 'Running'].includes(record.state) }, show: (record) => { return ['Created', 'Running'].includes(record.state) },
popup: true, popup: true,
@ -454,6 +477,7 @@ export default {
api: 'upgradeKubernetesCluster', api: 'upgradeKubernetesCluster',
icon: 'plus-circle', icon: 'plus-circle',
label: 'label.kubernetes.cluster.upgrade', label: 'label.kubernetes.cluster.upgrade',
docHelp: 'plugins/cloudstack-kubernetes-service.html#upgrading-kubernetes-cluster',
dataView: true, dataView: true,
show: (record) => { return ['Created', 'Running'].includes(record.state) }, show: (record) => { return ['Created', 'Running'].includes(record.state) },
popup: true, popup: true,
@ -463,6 +487,7 @@ export default {
api: 'deleteKubernetesCluster', api: 'deleteKubernetesCluster',
icon: 'delete', icon: 'delete',
label: 'label.kubernetes.cluster.delete', label: 'label.kubernetes.cluster.delete',
docHelp: 'plugins/cloudstack-kubernetes-service.html#deleting-kubernetes-cluster',
dataView: true, dataView: true,
show: (record) => { return !['Destroyed', 'Destroying'].includes(record.state) } show: (record) => { return !['Destroyed', 'Destroying'].includes(record.state) }
} }
@ -522,6 +547,7 @@ export default {
api: 'createSSHKeyPair', api: 'createSSHKeyPair',
icon: 'plus', icon: 'plus',
label: 'label.create.ssh.key.pair', label: 'label.create.ssh.key.pair',
docHelp: 'adminguide/virtual_machines.html#creating-the-ssh-keypair',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/compute/CreateSSHKeyPair.vue') component: () => import('@/views/compute/CreateSSHKeyPair.vue')
@ -564,6 +590,7 @@ export default {
api: 'createAffinityGroup', api: 'createAffinityGroup',
icon: 'plus', icon: 'plus',
label: 'label.add.affinity.group', label: 'label.add.affinity.group',
docHelp: 'adminguide/virtual_machines.html#creating-a-new-affinity-group',
listView: true, listView: true,
args: ['name', 'description', 'type'], args: ['name', 'description', 'type'],
mapping: { mapping: {
@ -576,6 +603,7 @@ export default {
api: 'deleteAffinityGroup', api: 'deleteAffinityGroup',
icon: 'delete', icon: 'delete',
label: 'label.delete.affinity.group', label: 'label.delete.affinity.group',
docHelp: 'adminguide/virtual_machines.html#delete-an-affinity-group',
message: 'message.delete.affinity.group', message: 'message.delete.affinity.group',
dataView: true dataView: true
} }

View File

@ -19,6 +19,7 @@ export default {
name: 'domain', name: 'domain',
title: 'label.domains', title: 'label.domains',
icon: 'block', icon: 'block',
docHelp: 'adminguide/accounts.html#domains',
permission: ['listDomains', 'listDomainChildren'], permission: ['listDomains', 'listDomainChildren'],
resourceType: 'Domain', resourceType: 'Domain',
columns: ['name', 'state', 'path', 'parentdomainname', 'level'], columns: ['name', 'state', 'path', 'parentdomainname', 'level'],
@ -91,6 +92,7 @@ export default {
api: 'linkDomainToLdap', api: 'linkDomainToLdap',
icon: 'link', icon: 'link',
label: 'label.link.domain.to.ldap', label: 'label.link.domain.to.ldap',
docHelp: 'adminguide/accounts.html#using-an-ldap-server-for-user-authentication',
listView: true, listView: true,
dataView: true, dataView: true,
args: ['type', 'domainid', 'name', 'accounttype', 'admin'], args: ['type', 'domainid', 'name', 'accounttype', 'admin'],

View File

@ -19,6 +19,7 @@ export default {
name: 'event', name: 'event',
title: 'label.events', title: 'label.events',
icon: 'schedule', icon: 'schedule',
docHelp: 'adminguide/events.html',
permission: ['listEvents'], permission: ['listEvents'],
columns: ['username', 'description', 'state', 'level', 'type', 'account', 'domain', 'created'], columns: ['username', 'description', 'state', 'level', 'type', 'account', 'domain', 'created'],
details: ['username', 'id', 'description', 'state', 'level', 'type', 'account', 'domain', 'created'], details: ['username', 'id', 'description', 'state', 'level', 'type', 'account', 'domain', 'created'],
@ -33,6 +34,7 @@ export default {
icon: 'book', icon: 'book',
label: 'label.archive.events', label: 'label.archive.events',
message: 'message.confirm.archive.selected.events', message: 'message.confirm.archive.selected.events',
docHelp: 'adminguide/events.html#deleting-and-archiving-events-and-alerts',
listView: false, listView: false,
dataView: true, dataView: true,
args: ['ids'], args: ['ids'],
@ -47,6 +49,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.events', label: 'label.delete.events',
message: 'message.confirm.remove.selected.events', message: 'message.confirm.remove.selected.events',
docHelp: 'adminguide/events.html#deleting-and-archiving-events-and-alerts',
listView: false, listView: false,
dataView: true, dataView: true,
args: ['ids'], args: ['ids'],

View File

@ -21,6 +21,7 @@ export default {
name: 'image', name: 'image',
title: 'label.images', title: 'label.images',
icon: 'picture', icon: 'picture',
docHelp: 'adminguide/templates.html',
children: [ children: [
{ {
name: 'template', name: 'template',
@ -52,6 +53,7 @@ export default {
api: 'registerTemplate', api: 'registerTemplate',
icon: 'plus', icon: 'plus',
label: 'label.action.register.template', label: 'label.action.register.template',
docHelp: 'adminguide/templates.html#uploading-templates-from-a-remote-http-server',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/image/RegisterOrUploadTemplate.vue') component: () => import('@/views/image/RegisterOrUploadTemplate.vue')
@ -60,6 +62,7 @@ export default {
api: 'registerTemplate', api: 'registerTemplate',
icon: 'cloud-upload', icon: 'cloud-upload',
label: 'label.upload.template.from.local', label: 'label.upload.template.from.local',
docHelp: 'adminguide/templates.html#uploading-templates-and-isos-from-a-local-computer',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/image/RegisterOrUploadTemplate.vue') component: () => import('@/views/image/RegisterOrUploadTemplate.vue')
@ -76,6 +79,7 @@ export default {
icon: 'cloud-download', icon: 'cloud-download',
label: 'label.action.download.template', label: 'label.action.download.template',
message: 'message.action.download.template', message: 'message.action.download.template',
docHelp: 'adminguide/templates.html#exporting-templates',
dataView: true, dataView: true,
show: (record) => { return record && record.isextractable }, show: (record) => { return record && record.isextractable },
args: ['zoneid', 'mode'], args: ['zoneid', 'mode'],
@ -93,6 +97,7 @@ export default {
api: 'updateTemplatePermissions', api: 'updateTemplatePermissions',
icon: 'reconciliation', icon: 'reconciliation',
label: 'label.action.share.template', label: 'label.action.share.template',
docHelp: 'adminguide/templates.html#sharing-templates-with-other-accounts-projects',
dataView: true, dataView: true,
popup: true, popup: true,
show: (record, store) => { return (['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) && (record.domainid === store.userInfo.domainid && record.account === store.userInfo.account) || record.templatetype !== 'BUILTIN') }, show: (record, store) => { return (['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) && (record.domainid === store.userInfo.domainid && record.account === store.userInfo.account) || record.templatetype !== 'BUILTIN') },
@ -104,6 +109,7 @@ export default {
name: 'iso', name: 'iso',
title: 'label.isos', title: 'label.isos',
icon: 'usb', icon: 'usb',
docHelp: 'adminguide/templates.html#working-with-isos',
permission: ['listIsos'], permission: ['listIsos'],
params: { isofilter: 'self', showunique: 'true' }, params: { isofilter: 'self', showunique: 'true' },
resourceType: 'ISO', resourceType: 'ISO',
@ -127,6 +133,7 @@ export default {
api: 'registerIso', api: 'registerIso',
icon: 'plus', icon: 'plus',
label: 'label.action.register.iso', label: 'label.action.register.iso',
docHelp: 'adminguide/templates.html#id10',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/image/RegisterOrUploadIso.vue') component: () => import('@/views/image/RegisterOrUploadIso.vue')
@ -135,6 +142,7 @@ export default {
api: 'registerIso', api: 'registerIso',
icon: 'cloud-upload', icon: 'cloud-upload',
label: 'label.upload.iso.from.local', label: 'label.upload.iso.from.local',
docHelp: 'adminguide/templates.html#id10',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/image/RegisterOrUploadIso.vue') component: () => import('@/views/image/RegisterOrUploadIso.vue')
@ -151,6 +159,7 @@ export default {
icon: 'cloud-download', icon: 'cloud-download',
label: 'label.action.download.iso', label: 'label.action.download.iso',
message: 'message.action.download.iso', message: 'message.action.download.iso',
docHelp: 'adminguide/templates.html#exporting-templates',
dataView: true, dataView: true,
show: (record) => { return record && record.isextractable }, show: (record) => { return record && record.isextractable },
args: ['zoneid', 'mode'], args: ['zoneid', 'mode'],
@ -168,6 +177,7 @@ export default {
api: 'updateIsoPermissions', api: 'updateIsoPermissions',
icon: 'reconciliation', icon: 'reconciliation',
label: 'label.action.edit.iso', label: 'label.action.edit.iso',
docHelp: 'adminguide/templates.html#sharing-templates-with-other-accounts-projects',
dataView: true, dataView: true,
args: ['op', 'accounts', 'projectids'], args: ['op', 'accounts', 'projectids'],
popup: true, popup: true,

View File

@ -55,6 +55,7 @@ export default {
name: 'cpusocket', name: 'cpusocket',
title: 'label.cpu.sockets', title: 'label.cpu.sockets',
icon: 'inbox', icon: 'inbox',
docHelp: 'adminguide/management.html#reporting-cpu-sockets',
permission: ['listHosts'], permission: ['listHosts'],
component: () => import('@/views/infra/CpuSockets.vue') component: () => import('@/views/infra/CpuSockets.vue')
}, },
@ -69,6 +70,7 @@ export default {
name: 'alert', name: 'alert',
title: 'label.alerts', title: 'label.alerts',
icon: 'flag', icon: 'flag',
docHelp: 'adminguide/management.html#administrator-alerts',
permission: ['listAlerts'], permission: ['listAlerts'],
columns: ['name', 'description', 'type', 'sent'], columns: ['name', 'description', 'type', 'sent'],
details: ['name', 'id', 'type', 'sent', 'description'], details: ['name', 'id', 'type', 'sent', 'description'],
@ -78,6 +80,7 @@ export default {
icon: 'book', icon: 'book',
label: 'label.archive.alerts', label: 'label.archive.alerts',
message: 'message.confirm.archive.selected.alerts', message: 'message.confirm.archive.selected.alerts',
docHelp: 'adminguide/events.html#deleting-and-archiving-events-and-alerts',
dataView: true, dataView: true,
args: ['ids'], args: ['ids'],
mapping: { mapping: {
@ -91,6 +94,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.alerts', label: 'label.delete.alerts',
message: 'message.confirm.remove.selected.alerts', message: 'message.confirm.remove.selected.alerts',
docHelp: 'adminguide/events.html#deleting-and-archiving-events-and-alerts',
dataView: true, dataView: true,
args: ['ids'], args: ['ids'],
mapping: { mapping: {

View File

@ -50,6 +50,7 @@ export default {
api: 'addCluster', api: 'addCluster',
icon: 'plus', icon: 'plus',
label: 'label.add.cluster', label: 'label.add.cluster',
docHelp: 'adminguide/installguide/configuration.html#adding-a-cluster',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/infra/ClusterAdd.vue') component: () => import('@/views/infra/ClusterAdd.vue')
@ -59,6 +60,7 @@ export default {
icon: 'play-circle', icon: 'play-circle',
label: 'label.action.enable.cluster', label: 'label.action.enable.cluster',
message: 'message.action.enable.cluster', message: 'message.action.enable.cluster',
docHelp: 'adminguide/installguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
defaultArgs: { allocationstate: 'Enabled' }, defaultArgs: { allocationstate: 'Enabled' },
show: (record) => { return record.allocationstate === 'Disabled' } show: (record) => { return record.allocationstate === 'Disabled' }
@ -68,6 +70,7 @@ export default {
icon: 'pause-circle', icon: 'pause-circle',
label: 'label.action.disable.cluster', label: 'label.action.disable.cluster',
message: 'message.action.disable.cluster', message: 'message.action.disable.cluster',
docHelp: 'adminguide/installguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
defaultArgs: { allocationstate: 'Disabled' }, defaultArgs: { allocationstate: 'Disabled' },
show: (record) => { return record.allocationstate === 'Enabled' } show: (record) => { return record.allocationstate === 'Enabled' }

View File

@ -49,6 +49,7 @@ export default {
api: 'addHost', api: 'addHost',
icon: 'plus', icon: 'plus',
label: 'label.add.host', label: 'label.add.host',
docHelp: 'adminguide/installguide/configuration.html#adding-a-host',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/infra/HostAdd.vue') component: () => import('@/views/infra/HostAdd.vue')
@ -110,6 +111,7 @@ export default {
icon: 'plus-square', icon: 'plus-square',
label: 'label.action.enable.maintenance.mode', label: 'label.action.enable.maintenance.mode',
message: 'message.action.host.enable.maintenance.mode', message: 'message.action.host.enable.maintenance.mode',
docHelp: 'adminguide/hosts.html#maintaining-hypervisors-on-hosts',
dataView: true, dataView: true,
show: (record) => { return record.resourcestate === 'Enabled' } show: (record) => { return record.resourcestate === 'Enabled' }
}, },
@ -118,6 +120,7 @@ export default {
icon: 'minus-square', icon: 'minus-square',
label: 'label.action.cancel.maintenance.mode', label: 'label.action.cancel.maintenance.mode',
message: 'message.action.cancel.maintenance.mode', message: 'message.action.cancel.maintenance.mode',
docHelp: 'adminguide/hosts.html#maintaining-hypervisors-on-hosts',
dataView: true, dataView: true,
show: (record) => { return record.resourcestate === 'Maintenance' || record.resourcestate === 'ErrorInMaintenance' || record.resourcestate === 'PrepareForMaintenance' } show: (record) => { return record.resourcestate === 'Maintenance' || record.resourcestate === 'ErrorInMaintenance' || record.resourcestate === 'PrepareForMaintenance' }
}, },
@ -126,6 +129,7 @@ export default {
icon: 'setting', icon: 'setting',
label: 'label.outofbandmanagement.configure', label: 'label.outofbandmanagement.configure',
message: 'label.outofbandmanagement.configure', message: 'label.outofbandmanagement.configure',
docHelp: 'adminguide/hosts.html#out-of-band-management',
dataView: true, dataView: true,
args: ['hostid', 'address', 'port', 'username', 'password', 'driver'], args: ['hostid', 'address', 'port', 'username', 'password', 'driver'],
mapping: { mapping: {
@ -142,6 +146,7 @@ export default {
icon: 'plus-circle', icon: 'plus-circle',
label: 'label.outofbandmanagement.enable', label: 'label.outofbandmanagement.enable',
message: 'label.outofbandmanagement.enable', message: 'label.outofbandmanagement.enable',
docHelp: 'adminguide/hosts.html#out-of-band-management',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return !(record.outofbandmanagement && record.outofbandmanagement.enabled && return !(record.outofbandmanagement && record.outofbandmanagement.enabled &&
@ -159,6 +164,7 @@ export default {
icon: 'minus-circle', icon: 'minus-circle',
label: 'label.outofbandmanagement.disable', label: 'label.outofbandmanagement.disable',
message: 'label.outofbandmanagement.disable', message: 'label.outofbandmanagement.disable',
docHelp: 'adminguide/hosts.html#out-of-band-management',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return record.outofbandmanagement && record.outofbandmanagement.enabled && return record.outofbandmanagement && record.outofbandmanagement.enabled &&
@ -176,6 +182,7 @@ export default {
icon: 'login', icon: 'login',
label: 'label.outofbandmanagement.action.issue', label: 'label.outofbandmanagement.action.issue',
message: 'label.outofbandmanagement.action.issue', message: 'label.outofbandmanagement.action.issue',
docHelp: 'adminguide/hosts.html#out-of-band-management',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return record.outofbandmanagement && record.outofbandmanagement.enabled && return record.outofbandmanagement && record.outofbandmanagement.enabled &&
@ -193,6 +200,7 @@ export default {
icon: 'key', icon: 'key',
label: 'label.outofbandmanagement.changepassword', label: 'label.outofbandmanagement.changepassword',
message: 'label.outofbandmanagement.changepassword', message: 'label.outofbandmanagement.changepassword',
docHelp: 'adminguide/hosts.html#out-of-band-management',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return record.outofbandmanagement && record.outofbandmanagement.enabled && return record.outofbandmanagement && record.outofbandmanagement.enabled &&
@ -210,6 +218,7 @@ export default {
icon: 'tool', icon: 'tool',
label: 'label.ha.configure', label: 'label.ha.configure',
message: 'label.ha.configure', message: 'label.ha.configure',
docHelp: 'adminguide/reliability.html#ha-for-hosts',
dataView: true, dataView: true,
args: ['hostid', 'provider'], args: ['hostid', 'provider'],
mapping: { mapping: {
@ -226,6 +235,7 @@ export default {
icon: 'eye', icon: 'eye',
label: 'label.ha.enable', label: 'label.ha.enable',
message: 'label.ha.enable', message: 'label.ha.enable',
docHelp: 'adminguide/reliability.html#ha-for-hosts',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return !(record.hostha && record.hostha.haenable && return !(record.hostha && record.hostha.haenable &&
@ -243,6 +253,7 @@ export default {
icon: 'eye-invisible', icon: 'eye-invisible',
label: 'label.ha.disable', label: 'label.ha.disable',
message: 'label.ha.disable', message: 'label.ha.disable',
docHelp: 'adminguide/reliability.html#ha-for-hosts',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return record.hostha && record.hostha.haenable && return record.hostha && record.hostha.haenable &&
@ -260,6 +271,7 @@ export default {
icon: 'setting', icon: 'setting',
label: 'label.start.rolling.maintenance', label: 'label.start.rolling.maintenance',
message: 'label.start.rolling.maintenance', message: 'label.start.rolling.maintenance',
docHelp: 'adminguide/hosts.html#kvm-rolling-maintenance',
dataView: true, dataView: true,
show: (record) => { show: (record) => {
return record.hypervisor === 'KVM' && (record.resourcestate === 'Enabled' || record.resourcestate === 'ErrorInMaintenance') return record.hypervisor === 'KVM' && (record.resourcestate === 'Enabled' || record.resourcestate === 'ErrorInMaintenance')
@ -275,6 +287,7 @@ export default {
api: 'deleteHost', api: 'deleteHost',
icon: 'delete', icon: 'delete',
label: 'label.action.remove.host', label: 'label.action.remove.host',
docHelp: 'adminguide/hosts.html#removing-hosts',
dataView: true, dataView: true,
args: ['forced'], args: ['forced'],
show: (record) => { return ['Maintenance', 'Disabled', 'Down', 'Alert', 'Disconnected'].includes(record.resourcestate) } show: (record) => { return ['Maintenance', 'Disabled', 'Down', 'Alert', 'Disconnected'].includes(record.resourcestate) }

View File

@ -19,6 +19,7 @@ export default {
name: 'nsp', name: 'nsp',
title: 'label.network.service.providers', title: 'label.network.service.providers',
icon: 'compass', icon: 'compass',
docHelp: 'adminguide/networking.html#network-service-providers',
hidden: true, hidden: true,
permission: ['listNetworkServiceProviders'], permission: ['listNetworkServiceProviders'],
columns: ['name', 'state', 'physicalnetworkid'], columns: ['name', 'state', 'physicalnetworkid'],

View File

@ -18,6 +18,7 @@
export default { export default {
name: 'physicalnetwork', name: 'physicalnetwork',
title: 'label.physical.network', title: 'label.physical.network',
docHelp: 'adminguide/networking_and_traffic.html#basic-zone-physical-network-configuration',
icon: 'api', icon: 'api',
hidden: true, hidden: true,
permission: ['listPhysicalNetworks'], permission: ['listPhysicalNetworks'],

View File

@ -36,6 +36,7 @@ export default {
api: 'createPod', api: 'createPod',
icon: 'plus', icon: 'plus',
label: 'label.add.pod', label: 'label.add.pod',
docHelp: 'installguide/configuration.html#adding-a-pod',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/infra/PodAdd.vue') component: () => import('@/views/infra/PodAdd.vue')
@ -52,6 +53,7 @@ export default {
icon: 'play-circle', icon: 'play-circle',
label: 'label.action.enable.pod', label: 'label.action.enable.pod',
message: 'message.action.enable.pod', message: 'message.action.enable.pod',
docHelp: 'adminguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
show: (record) => { return record.allocationstate === 'Disabled' }, show: (record) => { return record.allocationstate === 'Disabled' },
args: ['allocationstate'], args: ['allocationstate'],
@ -66,6 +68,7 @@ export default {
icon: 'pause-circle', icon: 'pause-circle',
label: 'label.action.disable.pod', label: 'label.action.disable.pod',
message: 'message.action.disable.pod', message: 'message.action.disable.pod',
docHelp: 'adminguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
show: (record) => { return record.allocationstate === 'Enabled' }, show: (record) => { return record.allocationstate === 'Enabled' },
args: ['allocationstate'], args: ['allocationstate'],

View File

@ -21,6 +21,7 @@ export default {
name: 'storagepool', name: 'storagepool',
title: 'label.primary.storage', title: 'label.primary.storage',
icon: 'database', icon: 'database',
docHelp: 'adminguide/storage.html#primary-storage',
permission: ['listStoragePoolsMetrics'], permission: ['listStoragePoolsMetrics'],
columns: () => { columns: () => {
const fields = ['name', 'state', 'ipaddress', 'scope', 'type', 'path'] const fields = ['name', 'state', 'ipaddress', 'scope', 'type', 'path']

View File

@ -19,6 +19,7 @@ export default {
name: 'router', name: 'router',
title: 'label.virtual.routers', title: 'label.virtual.routers',
icon: 'fork', icon: 'fork',
docHelp: 'adminguide/systemvm.html#virtual-router',
permission: ['listRouters'], permission: ['listRouters'],
params: { projectid: '-1' }, params: { projectid: '-1' },
columns: ['name', 'state', 'publicip', 'guestnetworkname', 'vpcname', 'redundantstate', 'version', 'hostname', 'account', 'zonename', 'requiresupgrade'], columns: ['name', 'state', 'publicip', 'guestnetworkname', 'vpcname', 'redundantstate', 'version', 'hostname', 'account', 'zonename', 'requiresupgrade'],
@ -70,6 +71,7 @@ export default {
icon: 'fullscreen', icon: 'fullscreen',
label: 'label.upgrade.router.newer.template', label: 'label.upgrade.router.newer.template',
message: 'message.confirm.upgrade.router.newer.template', message: 'message.confirm.upgrade.router.newer.template',
docHelp: 'adminguide/systemvm.html#upgrading-virtual-routers',
dataView: true, dataView: true,
groupAction: true, groupAction: true,
show: (record) => { return record.requiresupgrade } show: (record) => { return record.requiresupgrade }

View File

@ -19,6 +19,7 @@ export default {
name: 'imagestore', name: 'imagestore',
title: 'label.secondary.storage', title: 'label.secondary.storage',
icon: 'picture', icon: 'picture',
docHelp: 'adminguide/storage.html#secondary-storage',
permission: ['listImageStores'], permission: ['listImageStores'],
columns: ['name', 'url', 'protocol', 'scope', 'zonename'], columns: ['name', 'url', 'protocol', 'scope', 'zonename'],
details: ['name', 'id', 'url', 'protocol', 'provider', 'scope', 'zonename'], details: ['name', 'id', 'url', 'protocol', 'provider', 'scope', 'zonename'],

View File

@ -19,6 +19,7 @@ export default {
name: 'systemvm', name: 'systemvm',
title: 'label.system.vms', title: 'label.system.vms',
icon: 'thunderbolt', icon: 'thunderbolt',
docHelp: 'adminguide/systemvm.html',
permission: ['listSystemVms'], permission: ['listSystemVms'],
columns: ['name', 'state', 'agentstate', 'systemvmtype', 'publicip', 'privateip', 'linklocalip', 'hostname', 'zonename'], columns: ['name', 'state', 'agentstate', 'systemvmtype', 'publicip', 'privateip', 'linklocalip', 'hostname', 'zonename'],
details: ['name', 'id', 'agentstate', 'systemvmtype', 'publicip', 'privateip', 'linklocalip', 'gateway', 'hostname', 'zonename', 'created', 'activeviewersessions'], details: ['name', 'id', 'agentstate', 'systemvmtype', 'publicip', 'privateip', 'linklocalip', 'gateway', 'hostname', 'zonename', 'created', 'activeviewersessions'],

View File

@ -74,6 +74,7 @@ export default {
api: 'createZone', api: 'createZone',
icon: 'plus', icon: 'plus',
label: 'label.add.zone', label: 'label.add.zone',
docHelp: 'installguide/configuration.html#adding-a-zone',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/infra/zone/ZoneWizard.vue') component: () => import('@/views/infra/zone/ZoneWizard.vue')
@ -99,6 +100,7 @@ export default {
icon: 'pause-circle', icon: 'pause-circle',
label: 'label.action.disable.zone', label: 'label.action.disable.zone',
message: 'message.action.disable.zone', message: 'message.action.disable.zone',
docHelp: 'adminguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
defaultArgs: { allocationstate: 'Disabled' }, defaultArgs: { allocationstate: 'Disabled' },
show: (record) => { return record.allocationstate === 'Enabled' } show: (record) => { return record.allocationstate === 'Enabled' }
@ -108,6 +110,7 @@ export default {
icon: 'play-circle', icon: 'play-circle',
label: 'label.action.enable.zone', label: 'label.action.enable.zone',
message: 'message.action.enable.zone', message: 'message.action.enable.zone',
docHelp: 'adminguide/hosts.html#disabling-and-enabling-zones-pods-and-clusters',
dataView: true, dataView: true,
defaultArgs: { allocationstate: 'Enabled' }, defaultArgs: { allocationstate: 'Enabled' },
show: (record) => { return record.allocationstate === 'Disabled' } show: (record) => { return record.allocationstate === 'Disabled' }

View File

@ -21,6 +21,7 @@ export default {
name: 'network', name: 'network',
title: 'label.network', title: 'label.network',
icon: 'wifi', icon: 'wifi',
docHelp: 'adminguide/networking_and_traffic.html#advanced-zone-physical-network-configuration',
children: [ children: [
{ {
name: 'guestnetwork', name: 'guestnetwork',
@ -56,6 +57,7 @@ export default {
api: 'createNetwork', api: 'createNetwork',
icon: 'plus', icon: 'plus',
label: 'label.add.network', label: 'label.add.network',
docHelp: 'adminguide/networking_and_traffic.html#configure-guest-traffic-in-an-advanced-zone',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/network/CreateNetwork.vue') component: () => import('@/views/network/CreateNetwork.vue')
@ -79,6 +81,7 @@ export default {
icon: 'swap', icon: 'swap',
label: 'label.replace.acl.list', label: 'label.replace.acl.list',
message: 'message.confirm.replace.acl.new.one', message: 'message.confirm.replace.acl.new.one',
docHelp: 'adminguide/networking_and_traffic.html#configuring-network-access-control-list',
dataView: true, dataView: true,
show: (record) => { return record.vpcid }, show: (record) => { return record.vpcid },
args: ['aclid', 'networkid'], args: ['aclid', 'networkid'],
@ -105,6 +108,7 @@ export default {
name: 'vpc', name: 'vpc',
title: 'label.vpc', title: 'label.vpc',
icon: 'deployment-unit', icon: 'deployment-unit',
docHelp: 'adminguide/networking_and_traffic.html#configuring-a-virtual-private-cloud',
permission: ['listVPCs'], permission: ['listVPCs'],
resourceType: 'Vpc', resourceType: 'Vpc',
columns: ['name', 'state', 'displaytext', 'cidr', 'account', 'zonename'], columns: ['name', 'state', 'displaytext', 'cidr', 'account', 'zonename'],
@ -131,6 +135,7 @@ export default {
api: 'createVPC', api: 'createVPC',
icon: 'plus', icon: 'plus',
label: 'label.add.vpc', label: 'label.add.vpc',
docHelp: 'adminguide/networking_and_traffic.html#adding-a-virtual-private-cloud',
listView: true, listView: true,
args: ['name', 'displaytext', 'zoneid', 'cidr', 'networkdomain', 'vpcofferingid', 'start'] args: ['name', 'displaytext', 'zoneid', 'cidr', 'networkdomain', 'vpcofferingid', 'start']
}, },
@ -162,6 +167,7 @@ export default {
name: 'securitygroups', name: 'securitygroups',
title: 'label.security.groups', title: 'label.security.groups',
icon: 'fire', icon: 'fire',
docHelp: 'adminguide/networking_and_traffic.html#security-groups',
permission: ['listSecurityGroups'], permission: ['listSecurityGroups'],
resourceType: 'SecurityGroup', resourceType: 'SecurityGroup',
columns: ['name', 'description', 'account', 'domain'], columns: ['name', 'description', 'account', 'domain'],
@ -181,6 +187,7 @@ export default {
api: 'createSecurityGroup', api: 'createSecurityGroup',
icon: 'plus', icon: 'plus',
label: 'label.add.security.group', label: 'label.add.security.group',
docHelp: 'adminguide/networking_and_traffic.html#adding-a-security-group',
listView: true, listView: true,
args: ['name', 'description'] args: ['name', 'description']
}, },
@ -206,6 +213,7 @@ export default {
name: 'publicip', name: 'publicip',
title: 'label.public.ip.addresses', title: 'label.public.ip.addresses',
icon: 'environment', icon: 'environment',
docHelp: 'adminguide/networking_and_traffic.html#reserving-public-ip-addresses-and-vlans-for-accounts',
permission: ['listPublicIpAddresses'], permission: ['listPublicIpAddresses'],
resourceType: 'PublicIpAddress', resourceType: 'PublicIpAddress',
columns: ['ipaddress', 'state', 'associatednetworkname', 'virtualmachinename', 'allocated', 'account', 'zonename'], columns: ['ipaddress', 'state', 'associatednetworkname', 'virtualmachinename', 'allocated', 'account', 'zonename'],
@ -235,6 +243,7 @@ export default {
api: 'enableStaticNat', api: 'enableStaticNat',
icon: 'plus-circle', icon: 'plus-circle',
label: 'label.action.enable.static.nat', label: 'label.action.enable.static.nat',
docHelp: 'adminguide/networking_and_traffic.html#enabling-or-disabling-static-nat',
dataView: true, dataView: true,
show: (record) => { return !record.virtualmachineid && !record.issourcenat }, show: (record) => { return !record.virtualmachineid && !record.issourcenat },
popup: true, popup: true,
@ -245,6 +254,7 @@ export default {
icon: 'minus-circle', icon: 'minus-circle',
label: 'label.action.disable.static.nat', label: 'label.action.disable.static.nat',
message: 'message.action.disable.static.nat', message: 'message.action.disable.static.nat',
docHelp: 'adminguide/networking_and_traffic.html#enabling-or-disabling-static-nat',
dataView: true, dataView: true,
show: (record) => { return record.virtualmachineid }, show: (record) => { return record.virtualmachineid },
args: ['ipaddressid'], args: ['ipaddressid'],
@ -259,6 +269,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.release.ip', label: 'label.action.release.ip',
message: 'message.action.release.ip', message: 'message.action.release.ip',
docHelp: 'adminguide/networking_and_traffic.html#releasing-an-ip-address-alloted-to-a-vpc',
dataView: true, dataView: true,
show: (record) => { return !record.issourcenat } show: (record) => { return !record.issourcenat }
} }
@ -285,6 +296,7 @@ export default {
api: 'createPrivateGateway', api: 'createPrivateGateway',
icon: 'plus', icon: 'plus',
label: 'label.add.private.gateway', label: 'label.add.private.gateway',
docHelp: 'adminguide/networking_and_traffic.html#adding-a-private-gateway-to-a-vpc',
listView: true, listView: true,
args: (record, store) => { args: (record, store) => {
var fields = ['vpcid', 'physicalnetworkid', 'vlan', 'ipaddress', 'gateway', 'netmask', 'sourcenatsupported', 'aclid'] var fields = ['vpcid', 'physicalnetworkid', 'vlan', 'ipaddress', 'gateway', 'netmask', 'sourcenatsupported', 'aclid']
@ -304,6 +316,7 @@ export default {
icon: 'swap', icon: 'swap',
label: 'label.replace.acl.list', label: 'label.replace.acl.list',
message: 'message.confirm.replace.acl.new.one', message: 'message.confirm.replace.acl.new.one',
docHelp: 'adminguide/networking_and_traffic.html#acl-on-private-gateway',
dataView: true, dataView: true,
args: ['aclid', 'gatewayid'], args: ['aclid', 'gatewayid'],
mapping: { mapping: {
@ -338,6 +351,7 @@ export default {
api: 'createVpnGateway', api: 'createVpnGateway',
icon: 'plus', icon: 'plus',
label: 'label.add.vpn.gateway', label: 'label.add.vpn.gateway',
docHelp: 'adminguide/networking_and_traffic.html#creating-a-vpn-gateway-for-the-vpc',
listView: true, listView: true,
args: ['vpcid'] args: ['vpcid']
}, },
@ -346,6 +360,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.vpn.gateway', label: 'label.delete.vpn.gateway',
message: 'message.delete.vpn.gateway', message: 'message.delete.vpn.gateway',
docHelp: 'adminguide/networking_and_traffic.html#restarting-and-removing-a-vpn-connection',
dataView: true dataView: true
} }
] ]
@ -353,6 +368,7 @@ export default {
{ {
name: 's2svpnconn', name: 's2svpnconn',
title: 'label.site.to.site.vpn.connections', title: 'label.site.to.site.vpn.connections',
docHelp: 'adminguide/networking_and_traffic.html#setting-up-a-site-to-site-vpn-connection',
icon: 'sync', icon: 'sync',
hidden: true, hidden: true,
permission: ['listVpnConnections'], permission: ['listVpnConnections'],
@ -363,6 +379,7 @@ export default {
api: 'createVpnConnection', api: 'createVpnConnection',
icon: 'plus', icon: 'plus',
label: 'label.create.vpn.connection', label: 'label.create.vpn.connection',
docHelp: 'adminguide/networking_and_traffic.html#creating-a-vpn-connection',
listView: true, listView: true,
args: ['s2scustomergatewayid', 's2svpngatewayid', 'passive'], args: ['s2scustomergatewayid', 's2svpngatewayid', 'passive'],
mapping: { mapping: {
@ -379,6 +396,7 @@ export default {
icon: 'reload', icon: 'reload',
label: 'label.reset.vpn.connection', label: 'label.reset.vpn.connection',
message: 'message.reset.vpn.connection', message: 'message.reset.vpn.connection',
docHelp: 'adminguide/networking_and_traffic.html#restarting-and-removing-a-vpn-connection',
dataView: true dataView: true
}, },
{ {
@ -386,6 +404,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.vpn.connection', label: 'label.delete.vpn.connection',
message: 'message.delete.vpn.connection', message: 'message.delete.vpn.connection',
docHelp: 'adminguide/networking_and_traffic.html#restarting-and-removing-a-vpn-connection',
dataView: true dataView: true
} }
] ]
@ -394,6 +413,7 @@ export default {
name: 'acllist', name: 'acllist',
title: 'label.network.acl.lists', title: 'label.network.acl.lists',
icon: 'bars', icon: 'bars',
docHelp: 'adminguide/networking_and_traffic.html#configuring-network-access-control-list',
hidden: true, hidden: true,
permission: ['listNetworkACLLists'], permission: ['listNetworkACLLists'],
columns: ['name', 'description', 'id'], columns: ['name', 'description', 'id'],
@ -411,6 +431,7 @@ export default {
api: 'createNetworkACLList', api: 'createNetworkACLList',
icon: 'plus', icon: 'plus',
label: 'label.add.acl.list', label: 'label.add.acl.list',
docHelp: 'adminguide/networking_and_traffic.html#creating-acl-lists',
listView: true, listView: true,
args: ['name', 'description', 'vpcid'] args: ['name', 'description', 'vpcid']
}, },
@ -433,6 +454,7 @@ export default {
{ {
name: 'ilb', name: 'ilb',
title: 'label.internal.lb', title: 'label.internal.lb',
docHelp: 'adminguide/networking_and_traffic.html#load-balancing-across-tiers',
icon: 'share-alt', icon: 'share-alt',
hidden: true, hidden: true,
permission: ['listLoadBalancers'], permission: ['listLoadBalancers'],
@ -451,6 +473,7 @@ export default {
api: 'createLoadBalancer', api: 'createLoadBalancer',
icon: 'plus', icon: 'plus',
label: 'label.add.internal.lb', label: 'label.add.internal.lb',
docHelp: 'adminguide/networking_and_traffic.html#creating-an-internal-lb-rule',
listView: true, listView: true,
args: ['name', 'description', 'sourceipaddress', 'sourceport', 'instanceport', 'algorithm', 'networkid', 'sourceipaddressnetworkid', 'scheme'], args: ['name', 'description', 'sourceipaddress', 'sourceport', 'instanceport', 'algorithm', 'networkid', 'sourceipaddressnetworkid', 'scheme'],
mapping: { mapping: {
@ -535,6 +558,7 @@ export default {
api: 'createVpnCustomerGateway', api: 'createVpnCustomerGateway',
icon: 'plus', icon: 'plus',
label: 'label.add.vpn.customer.gateway', label: 'label.add.vpn.customer.gateway',
docHelp: 'adminguide/networking_and_traffic.html#creating-and-updating-a-vpn-customer-gateway',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/network/CreateVpnCustomerGateway.vue') component: () => import('@/views/network/CreateVpnCustomerGateway.vue')
@ -543,6 +567,7 @@ export default {
api: 'updateVpnCustomerGateway', api: 'updateVpnCustomerGateway',
icon: 'edit', icon: 'edit',
label: 'label.edit', label: 'label.edit',
docHelp: 'adminguide/networking_and_traffic.html#updating-and-removing-a-vpn-customer-gateway',
dataView: true, dataView: true,
args: ['name', 'gateway', 'cidrlist', 'ipsecpsk', 'ikepolicy', 'ikelifetime', 'esppolicy', 'esplifetime', 'dpd', 'forceencap'] args: ['name', 'gateway', 'cidrlist', 'ipsecpsk', 'ikepolicy', 'ikelifetime', 'esppolicy', 'esplifetime', 'dpd', 'forceencap']
}, },
@ -551,6 +576,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.vpn.customer.gateway', label: 'label.delete.vpn.customer.gateway',
message: 'message.delete.vpn.customer.gateway', message: 'message.delete.vpn.customer.gateway',
docHelp: 'adminguide/networking_and_traffic.html#updating-and-removing-a-vpn-customer-gateway',
dataView: true dataView: true
} }
] ]

View File

@ -24,6 +24,7 @@ export default {
{ {
name: 'computeoffering', name: 'computeoffering',
title: 'label.compute.offerings', title: 'label.compute.offerings',
docHelp: 'adminguide/service_offerings.html#compute-and-disk-service-offerings',
icon: 'cloud', icon: 'cloud',
permission: ['listServiceOfferings', 'listDomains'], permission: ['listServiceOfferings', 'listDomains'],
params: { isrecursive: 'true' }, params: { isrecursive: 'true' },
@ -38,6 +39,7 @@ export default {
api: 'createServiceOffering', api: 'createServiceOffering',
icon: 'plus', icon: 'plus',
label: 'label.add.compute.offering', label: 'label.add.compute.offering',
docHelp: 'adminguide/service_offerings.html#creating-a-new-compute-offering',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/offering/AddComputeOffering.vue') component: () => import('@/views/offering/AddComputeOffering.vue')
@ -45,12 +47,14 @@ export default {
api: 'updateServiceOffering', api: 'updateServiceOffering',
icon: 'edit', icon: 'edit',
label: 'label.edit', label: 'label.edit',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
args: ['name', 'displaytext'] args: ['name', 'displaytext']
}, { }, {
api: 'updateServiceOffering', api: 'updateServiceOffering',
icon: 'lock', icon: 'lock',
label: 'label.action.update.offering.access', label: 'label.action.update.offering.access',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
popup: true, popup: true,
component: () => import('@/views/offering/UpdateOfferingAccess.vue') component: () => import('@/views/offering/UpdateOfferingAccess.vue')
@ -59,6 +63,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.delete.service.offering', label: 'label.action.delete.service.offering',
message: 'message.action.delete.service.offering', message: 'message.action.delete.service.offering',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true dataView: true
}] }]
}, },
@ -66,6 +71,7 @@ export default {
name: 'systemoffering', name: 'systemoffering',
title: 'label.system.offerings', title: 'label.system.offerings',
icon: 'setting', icon: 'setting',
docHelp: 'adminguide/service_offerings.html#system-service-offerings',
permission: ['listServiceOfferings', 'listInfrastructure'], permission: ['listServiceOfferings', 'listInfrastructure'],
params: { issystem: 'true', isrecursive: 'true' }, params: { issystem: 'true', isrecursive: 'true' },
columns: ['name', 'systemvmtype', 'cpunumber', 'cpuspeed', 'memory', 'storagetype', 'tags', 'order'], columns: ['name', 'systemvmtype', 'cpunumber', 'cpuspeed', 'memory', 'storagetype', 'tags', 'order'],
@ -74,6 +80,7 @@ export default {
api: 'createServiceOffering', api: 'createServiceOffering',
icon: 'plus', icon: 'plus',
label: 'label.add.system.service.offering', label: 'label.add.system.service.offering',
docHelp: 'adminguide/service_offerings.html#creating-a-new-system-service-offering',
listView: true, listView: true,
params: { issystem: 'true' }, params: { issystem: 'true' },
popup: true, popup: true,
@ -84,12 +91,14 @@ export default {
label: 'label.edit', label: 'label.edit',
dataView: true, dataView: true,
params: { issystem: 'true' }, params: { issystem: 'true' },
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
args: ['name', 'displaytext'] args: ['name', 'displaytext']
}, { }, {
api: 'deleteServiceOffering', api: 'deleteServiceOffering',
icon: 'delete', icon: 'delete',
label: 'label.action.delete.system.service.offering', label: 'label.action.delete.system.service.offering',
message: 'message.action.delete.system.service.offering', message: 'message.action.delete.system.service.offering',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
params: { issystem: 'true' } params: { issystem: 'true' }
}] }]
@ -98,6 +107,7 @@ export default {
name: 'diskoffering', name: 'diskoffering',
title: 'label.disk.offerings', title: 'label.disk.offerings',
icon: 'hdd', icon: 'hdd',
docHelp: 'adminguide/service_offerings.html#compute-and-disk-service-offerings',
permission: ['listDiskOfferings', 'listDomains'], permission: ['listDiskOfferings', 'listDomains'],
params: { isrecursive: 'true' }, params: { isrecursive: 'true' },
columns: ['name', 'displaytext', 'disksize', 'tags', 'domain', 'zone', 'order'], columns: ['name', 'displaytext', 'disksize', 'tags', 'domain', 'zone', 'order'],
@ -111,6 +121,7 @@ export default {
api: 'createDiskOffering', api: 'createDiskOffering',
icon: 'plus', icon: 'plus',
label: 'label.add.disk.offering', label: 'label.add.disk.offering',
docHelp: 'adminguide/service_offerings.html#creating-a-new-disk-offering',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/offering/AddDiskOffering.vue') component: () => import('@/views/offering/AddDiskOffering.vue')
@ -118,12 +129,14 @@ export default {
api: 'updateDiskOffering', api: 'updateDiskOffering',
icon: 'edit', icon: 'edit',
label: 'label.edit', label: 'label.edit',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
args: ['name', 'displaytext'] args: ['name', 'displaytext']
}, { }, {
api: 'updateDiskOffering', api: 'updateDiskOffering',
icon: 'lock', icon: 'lock',
label: 'label.action.update.offering.access', label: 'label.action.update.offering.access',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
popup: true, popup: true,
component: () => import('@/views/offering/UpdateOfferingAccess.vue') component: () => import('@/views/offering/UpdateOfferingAccess.vue')
@ -132,6 +145,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.delete.disk.offering', label: 'label.action.delete.disk.offering',
message: 'message.action.delete.disk.offering', message: 'message.action.delete.disk.offering',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true dataView: true
}] }]
}, },
@ -139,6 +153,7 @@ export default {
name: 'backupoffering', name: 'backupoffering',
title: 'label.backup.offerings', title: 'label.backup.offerings',
icon: 'cloud-upload', icon: 'cloud-upload',
docHelp: 'adminguide/virtual_machines.html#backup-offerings',
permission: ['listBackupOfferings', 'listInfrastructure'], permission: ['listBackupOfferings', 'listInfrastructure'],
columns: ['name', 'description', 'zoneid'], columns: ['name', 'description', 'zoneid'],
details: ['name', 'id', 'description', 'externalid', 'zone', 'created'], details: ['name', 'id', 'description', 'externalid', 'zone', 'created'],
@ -146,6 +161,7 @@ export default {
api: 'importBackupOffering', api: 'importBackupOffering',
icon: 'plus', icon: 'plus',
label: 'label.import.backup.offering', label: 'label.import.backup.offering',
docHelp: 'adminguide/virtual_machines.html#importing-backup-offerings',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/offering/ImportBackupOffering.vue') component: () => import('@/views/offering/ImportBackupOffering.vue')
@ -154,6 +170,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.action.delete.backup.offering', label: 'label.action.delete.backup.offering',
message: 'message.action.delete.backup.offering', message: 'message.action.delete.backup.offering',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true dataView: true
}] }]
}, },
@ -161,6 +178,7 @@ export default {
name: 'networkoffering', name: 'networkoffering',
title: 'label.network.offerings', title: 'label.network.offerings',
icon: 'wifi', icon: 'wifi',
docHelp: 'adminguide/networking.html#network-offerings',
permission: ['listNetworkOfferings', 'listInfrastructure'], permission: ['listNetworkOfferings', 'listInfrastructure'],
params: { isrecursive: 'true' }, params: { isrecursive: 'true' },
columns: ['name', 'state', 'guestiptype', 'traffictype', 'networkrate', 'tags', 'domain', 'zone', 'order'], columns: ['name', 'state', 'guestiptype', 'traffictype', 'networkrate', 'tags', 'domain', 'zone', 'order'],
@ -169,6 +187,7 @@ export default {
api: 'createNetworkOffering', api: 'createNetworkOffering',
icon: 'plus', icon: 'plus',
label: 'label.add.network.offering', label: 'label.add.network.offering',
docHelp: 'adminguide/networking.html#creating-a-new-network-offering',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/offering/AddNetworkOffering.vue') component: () => import('@/views/offering/AddNetworkOffering.vue')
@ -176,6 +195,7 @@ export default {
api: 'updateNetworkOffering', api: 'updateNetworkOffering',
icon: 'edit', icon: 'edit',
label: 'label.edit', label: 'label.edit',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
args: ['name', 'displaytext', 'availability'], args: ['name', 'displaytext', 'availability'],
mapping: { mapping: {
@ -213,6 +233,7 @@ export default {
api: 'updateNetworkOffering', api: 'updateNetworkOffering',
icon: 'lock', icon: 'lock',
label: 'label.action.update.offering.access', label: 'label.action.update.offering.access',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true, dataView: true,
popup: true, popup: true,
component: () => import('@/views/offering/UpdateOfferingAccess.vue') component: () => import('@/views/offering/UpdateOfferingAccess.vue')
@ -221,6 +242,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.remove.network.offering', label: 'label.remove.network.offering',
message: 'message.confirm.remove.network.offering', message: 'message.confirm.remove.network.offering',
docHelp: 'adminguide/service_offerings.html#modifying-or-deleting-a-service-offering',
dataView: true dataView: true
}] }]
}, },

View File

@ -20,6 +20,7 @@ import cloudian from '@/assets/icons/cloudian.svg?inline'
export default { export default {
name: 'cloudian', name: 'cloudian',
title: 'label.cloudian.storage', title: 'label.cloudian.storage',
docHelp: 'plugins/cloudian-connector.html',
icon: cloudian, icon: cloudian,
permission: ['cloudianSsoLogin'], permission: ['cloudianSsoLogin'],
component: () => import('@/views/plugins/CloudianPlugin.vue') component: () => import('@/views/plugins/CloudianPlugin.vue')

View File

@ -19,6 +19,7 @@ export default {
name: 'quota', name: 'quota',
title: 'label.quota', title: 'label.quota',
icon: 'pie-chart', icon: 'pie-chart',
docHelp: 'plugins/quota.html',
permission: ['quotaSummary'], permission: ['quotaSummary'],
children: [ children: [
{ {
@ -33,6 +34,7 @@ export default {
name: 'quotatariff', name: 'quotatariff',
title: 'label.quota.tariff', title: 'label.quota.tariff',
icon: 'credit-card', icon: 'credit-card',
docHelp: 'plugins/quota.html#quota-tariff',
permission: ['quotaTariffList'], permission: ['quotaTariffList'],
columns: ['usageName', 'description', 'usageUnit', 'tariffValue'], columns: ['usageName', 'description', 'usageUnit', 'tariffValue'],
details: ['usageName', 'description', 'usageUnit', 'tariffValue'] details: ['usageName', 'description', 'usageUnit', 'tariffValue']

View File

@ -19,6 +19,7 @@ export default {
name: 'project', name: 'project',
title: 'label.projects', title: 'label.projects',
icon: 'project', icon: 'project',
docHelp: 'adminguide/projects.html',
permission: ['listProjects'], permission: ['listProjects'],
resourceType: 'Project', resourceType: 'Project',
columns: ['name', 'state', 'displaytext', 'account', 'domain'], columns: ['name', 'state', 'displaytext', 'account', 'domain'],
@ -44,6 +45,7 @@ export default {
api: 'createProject', api: 'createProject',
icon: 'plus', icon: 'plus',
label: 'label.new.project', label: 'label.new.project',
docHelp: 'adminguide/projects.html#creating-a-new-project',
listView: true, listView: true,
args: ['name', 'displaytext'] args: ['name', 'displaytext']
}, },
@ -51,6 +53,7 @@ export default {
api: 'updateProjectInvitation', api: 'updateProjectInvitation',
icon: 'key', icon: 'key',
label: 'label.enter.token', label: 'label.enter.token',
docHelp: 'adminguide/projects.html#setting-up-invitations',
listView: true, listView: true,
popup: true, popup: true,
component: () => import('@/views/project/InvitationTokenTemplate.vue') component: () => import('@/views/project/InvitationTokenTemplate.vue')
@ -59,6 +62,7 @@ export default {
api: 'listProjectInvitations', api: 'listProjectInvitations',
icon: 'team', icon: 'team',
label: 'label.project.invitation', label: 'label.project.invitation',
docHelp: 'adminguide/projects.html#setting-up-invitations',
listView: true, listView: true,
popup: true, popup: true,
showBadge: true, showBadge: true,
@ -88,6 +92,7 @@ export default {
icon: 'pause-circle', icon: 'pause-circle',
label: 'label.suspend.project', label: 'label.suspend.project',
message: 'message.suspend.project', message: 'message.suspend.project',
docHelp: 'adminguide/projects.html#suspending-or-deleting-a-project',
dataView: true, dataView: true,
show: (record) => { return record.state !== 'Suspended' } show: (record) => { return record.state !== 'Suspended' }
}, },
@ -95,6 +100,7 @@ export default {
api: 'addAccountToProject', api: 'addAccountToProject',
icon: 'user-add', icon: 'user-add',
label: 'label.action.project.add.account', label: 'label.action.project.add.account',
docHelp: 'adminguide/projects.html#adding-project-members-from-the-ui',
dataView: true, dataView: true,
args: ['projectid', 'account', 'email'], args: ['projectid', 'account', 'email'],
show: (record, store) => { return record.account === store.userInfo.account || ['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) }, show: (record, store) => { return record.account === store.userInfo.account || ['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) },
@ -109,6 +115,7 @@ export default {
icon: 'delete', icon: 'delete',
label: 'label.delete.project', label: 'label.delete.project',
message: 'message.delete.project', message: 'message.delete.project',
docHelp: 'adminguide/projects.html#suspending-or-deleting-a-project',
dataView: true dataView: true
} }
] ]

View File

@ -19,6 +19,7 @@ export default {
name: 'role', name: 'role',
title: 'label.roles', title: 'label.roles',
icon: 'idcard', icon: 'idcard',
docHelp: 'adminguide/accounts.html#roles',
permission: ['listRoles', 'listRolePermissions'], permission: ['listRoles', 'listRolePermissions'],
columns: ['name', 'type', 'description'], columns: ['name', 'type', 'description'],
details: ['name', 'id', 'type', 'description'], details: ['name', 'id', 'type', 'description'],

View File

@ -19,6 +19,7 @@ export default {
name: 'accountuser', name: 'accountuser',
title: 'label.users', title: 'label.users',
icon: 'user', icon: 'user',
docHelp: 'adminguide/accounts.html#users',
hidden: true, hidden: true,
permission: ['listUsers'], permission: ['listUsers'],
columns: ['username', 'state', 'firstname', 'lastname', 'email', 'account', 'domain'], columns: ['username', 'state', 'firstname', 'lastname', 'email', 'account', 'domain'],