Commit 0221bbb2 authored by Ryo Yamashita's avatar Ryo Yamashita Committed by Yas Naoi
Browse files

Issue #3272661 by Ryo Yamashita, yas: Add the function to create VMware VM in the SPA

parent 54e87d4e
Loading
Loading
Loading
Loading
+7 −0
Changes for modules/cloud_dashboard/cloud_dashboard/src/constant/form_template/entity_form_template.ts: 7 added lines, 0 removed lines.
Original line number Diff line number Diff line
import VMWARE_VM_TEMPLATE from 'constant/form_template/vmware/vm';

const ENTITY_FORM_LIST = [
  VMWARE_VM_TEMPLATE,
];

export default ENTITY_FORM_LIST;
+34 −0
Changes for modules/cloud_dashboard/cloud_dashboard/src/constant/form_template/vmware/vm.ts: 34 added lines, 0 removed lines.
Original line number Diff line number Diff line
import EntityFormTemplate from 'model/EntityFormTemplate';

const VMWARE_VM_TEMPLATE: EntityFormTemplate = {
  cloudServiceProvider: 'vmware',
  entityName: 'vm',
  entityRecords: [
    {
      panelName: 'VM',
      tableRecordList: [],
      keyValueRecords: [
        { labelName: 'Name', name: 'name', type: 'default' },
        { labelName: 'Host', name: 'host', type: 'join', info: {
          entityTypeId: 'vmware_host',
          keyColumn: 'name',
          valueColumn: 'name'
        } },
        { labelName: 'Folder', name: 'folder', type: 'select',
          url: '/cloud_dashboard/vmware/{cloud_context}/folders' },
        { labelName: 'Datastore', name: 'datastore', type: 'select',
          url: '/cloud_dashboard/vmware/{cloud_context}/datastores' },
        { labelName: 'Guest OS', name: 'guest_os', type: 'select',
          url: '/cloud_dashboard/vmware/guest_oses' },
        { labelName: 'CPU Count', name: 'cpu_count', type: 'number' },
        { labelName: 'Memory Size (MiB)', name: 'memory_size', type: 'number' },
        { labelName: 'Disk Size (GiB)', name: 'disk_size', type: 'number-array' },
      ],
      defaultValues: [
        'vm1', '', '', '', '', 1, 4096, [10]
      ]
    },
  ]
}

export default VMWARE_VM_TEMPLATE;
+6 −1
Changes for modules/cloud_dashboard/cloud_dashboard/src/model/EntityColumn.ts: 6 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@
type EntityColumn = {
  labelName: string;
  name: string;
  type: 'default' | 'datetime' | 'cpu' | 'memory' | 'key-value' | 'cost' | 'array' | 'key-value-crlf' | 'cidr' | 'number' | 'vmware_os';
  type: 'default' | 'datetime' | 'cpu' | 'memory' | 'key-value' | 'cost' | 'array' | 'number-array' | 'key-value-crlf' | 'cidr' | 'number' | 'vmware_os';
} | {
  labelName: string;
  name: string;
@@ -44,6 +44,11 @@ type EntityColumn = {
  name: string;
  type: 'json-table';
  column: EntityColumn[]
} | {
  labelName: string;
  name: string;
  type: 'select';
  url: string;
};

export default EntityColumn;
+10 −0
Changes for modules/cloud_dashboard/cloud_dashboard/src/model/EntityFormRecord.ts: 10 added lines, 0 removed lines.
Original line number Diff line number Diff line
import EntityColumn from 'model/EntityColumn';

type EntityInfoRecord = {
  panelName: string,
  tableRecordList: string[],
  keyValueRecords: EntityColumn[],
  defaultValues: (string | number | number[])[],
};

export default EntityInfoRecord;
+9 −0
Changes for modules/cloud_dashboard/cloud_dashboard/src/model/EntityFormTemplate.ts: 9 added lines, 0 removed lines.
Original line number Diff line number Diff line
import EntityFormRecord from 'model/EntityFormRecord';

type EntityFormTemplate = {
  cloudServiceProvider: string,
  entityName: string,
  entityRecords: EntityFormRecord[],
}

export default EntityFormTemplate;
Loading