@@ -129,17 +129,20 @@ public static String syncVolumeToVmDefaultFolder(DatacenterMO dcMo, String vmNam
129129 vmdkLinkedCloneModePair [1 ], dcMo .getMor (), true );
130130 }
131131
132- s_logger .info ("sync " + vmdkLinkedCloneModeLegacyPair [0 ] + "->" + vmdkLinkedCloneModePair [0 ]);
133- ds .moveDatastoreFile (vmdkLinkedCloneModeLegacyPair [0 ], dcMo .getMor (), ds .getMor (),
134- vmdkLinkedCloneModePair [0 ], dcMo .getMor (), true );
132+ if (ds .fileExists (vmdkLinkedCloneModeLegacyPair [0 ])) {
133+ s_logger .info ("sync " + vmdkLinkedCloneModeLegacyPair [0 ] + "->" + vmdkLinkedCloneModePair [0 ]);
134+ ds .moveDatastoreFile (vmdkLinkedCloneModeLegacyPair [0 ], dcMo .getMor (), ds .getMor (),
135+ vmdkLinkedCloneModePair [0 ], dcMo .getMor (), true );
136+ }
135137
138+ // Note: we will always return a path
136139 return vmdkLinkedCloneModePair [0 ];
137140 }
138141
139142 public static void syncVolumeToRootFolder (DatacenterMO dcMo , DatastoreMO ds , String vmdkName ) throws Exception {
140143 String fileDsFullPath = ds .searchFileInSubFolders (vmdkName + ".vmdk" , false );
141144 if (fileDsFullPath == null )
142- throw new Exception ( "Unable to find " + vmdkName + ".vmdk in datastore: " + ds . getName ()) ;
145+ return ;
143146
144147 DatastoreFile srcDsFile = new DatastoreFile (fileDsFullPath );
145148 String companionFilePath = srcDsFile .getCompanionPath (vmdkName + "-flat.vmdk" );
0 commit comments