Преглед изворни кода

Merge pull request #288 from smiclea/azure-migrate-matching

Improve Azure Migrate VM matching
Dorin Paslaru пре 7 година
родитељ
комит
c39ef3676c

+ 3 - 1
src/components/molecules/AssessedVmListItem/AssessedVmListItem.jsx

@@ -53,11 +53,13 @@ const Value = styled.div`
 `
 `
 const DisplayNameLabel = styled.div`
 const DisplayNameLabel = styled.div`
   margin-left: 8px;
   margin-left: 8px;
+  word-break: break-word;
 `
 `
-const InfoIconStyled = styled(InfoIcon) `
+const InfoIconStyled = styled(InfoIcon)`
   position: absolute;
   position: absolute;
   left: -36px;
   left: -36px;
   top: 0px;
   top: 0px;
+  z-index: 10000;
 `
 `
 
 
 type Props = {
 type Props = {

+ 2 - 3
src/components/organisms/AssessmentDetailsContent/AssessmentDetailsContent.jsx

@@ -204,7 +204,7 @@ class AssessmentDetailsContent extends React.Component<Props> {
     }
     }
 
 
     if (this.props.instances.length > 0 &&
     if (this.props.instances.length > 0 &&
-      !this.props.instances.find(i => i.instance_name === `${vm.properties.datacenterContainer}/${vm.properties.displayName}`)) {
+      !this.props.instances.find(i => i.id === `${vm.properties.datacenterMachineId}`)) {
       return false
       return false
     }
     }
 
 
@@ -322,7 +322,6 @@ class AssessmentDetailsContent extends React.Component<Props> {
     }
     }
 
 
     let items = this.props.filteredAssessedVms.map(vm => {
     let items = this.props.filteredAssessedVms.map(vm => {
-      let filteredVm = this.props.filteredAssessedVms.find(v => v.id === vm.id)
       return (
       return (
         <AssessedVmListItem
         <AssessedVmListItem
           item={vm}
           item={vm}
@@ -330,7 +329,7 @@ class AssessmentDetailsContent extends React.Component<Props> {
           onSelectedChange={(vm, selected) => { this.props.onVmSelectedChange(vm, selected) }}
           onSelectedChange={(vm, selected) => { this.props.onVmSelectedChange(vm, selected) }}
           disabled={!this.doesVmMatchSource(vm)}
           disabled={!this.doesVmMatchSource(vm)}
           loadingVmSizes={this.props.loadingVmSizes}
           loadingVmSizes={this.props.loadingVmSizes}
-          recommendedVmSize={filteredVm ? filteredVm.properties.recommendedSize : ''}
+          recommendedVmSize={vm.properties.recommendedSize}
           vmSizes={this.props.vmSizes}
           vmSizes={this.props.vmSizes}
           selectedVmSize={this.props.onGetVmSize(vm)}
           selectedVmSize={this.props.onGetVmSize(vm)}
           onVmSizeChange={size => { this.props.onVmSizeChange(vm, size) }}
           onVmSizeChange={size => { this.props.onVmSizeChange(vm, size) }}

+ 4 - 4
src/components/pages/AssessmentDetailsPage/AssessmentDetailsPage.jsx

@@ -132,7 +132,7 @@ class AssessmentDetailsPage extends React.Component<Props, State> {
     }
     }
     return azureStore.assessedVms.filter(vm => {
     return azureStore.assessedVms.filter(vm => {
       if (vm.properties.datacenterManagementServer.toLowerCase() === sourceHost.toLowerCase() &&
       if (vm.properties.datacenterManagementServer.toLowerCase() === sourceHost.toLowerCase() &&
-        instanceStore.instances.find(i => i.instance_name === `${vm.properties.datacenterContainer}/${vm.properties.displayName}`)) {
+        instanceStore.instances.find(i => i.id === `${vm.properties.datacenterMachineId}`)) {
         return true
         return true
       }
       }
       return false
       return false
@@ -209,10 +209,10 @@ class AssessmentDetailsPage extends React.Component<Props, State> {
 
 
   handleMigrationExecute(options: Field[]) {
   handleMigrationExecute(options: Field[]) {
     let selectedInstances = instanceStore.instancesDetails
     let selectedInstances = instanceStore.instancesDetails
-      .filter(i => this.state.selectedVms.find(m => i.instance_name === `${m.properties.datacenterContainer}/${m.properties.displayName}`))
+      .filter(i => this.state.selectedVms.find(m => i.id === `${m.properties.datacenterMachineId}`))
     let vmSizes = {}
     let vmSizes = {}
     selectedInstances.forEach(i => {
     selectedInstances.forEach(i => {
-      let vm = this.state.selectedVms.find(m => i.instance_name === `${m.properties.datacenterContainer}/${m.properties.displayName}`)
+      let vm = this.state.selectedVms.find(m => i.id === `${m.properties.datacenterMachineId}`)
       vmSizes[i.instance_name] = vm ? this.state.vmSizes[vm.id].name : ''
       vmSizes[i.instance_name] = vm ? this.state.vmSizes[vm.id].name : ''
     })
     })
 
 
@@ -320,7 +320,7 @@ class AssessmentDetailsPage extends React.Component<Props, State> {
   }
   }
 
 
   loadInstancesDetails() {
   loadInstancesDetails() {
-    let instances = instanceStore.instances.filter(i => this.state.selectedVms.find(m => i.instance_name === `${m.properties.datacenterContainer}/${m.properties.displayName}`))
+    let instances = instanceStore.instances.filter(i => this.state.selectedVms.find(m => i.id === `${m.properties.datacenterMachineId}`))
     instanceStore.clearInstancesDetails()
     instanceStore.clearInstancesDetails()
     instanceStore.loadInstancesDetails(this.getSourceEndpointId(), instances)
     instanceStore.loadInstancesDetails(this.getSourceEndpointId(), instances)
   }
   }

+ 1 - 0
src/types/Assessment.js

@@ -35,6 +35,7 @@ export type VmItem = {
     },
     },
     datacenterContainer: string,
     datacenterContainer: string,
     datacenterManagementServer: string,
     datacenterManagementServer: string,
+    datacenterMachineId: string,
     displayName: string,
     displayName: string,
     operatingSystem: string,
     operatingSystem: string,
   },
   },