Exemple #1
0
        /// <summary>
        /// Mounts the persistent disk.
        /// </summary>
        /// <param name="diskId">Id of the disk.</param>
        public static void MountPersistentDisk(int diskId)
        {
            string storeMountPoint = Path.Combine(BaseMessage.BaseDir, "store");
            string mountpoint;

            if (DiskUtil.IsMountPoint(storeMountPoint))
            {
                Logger.Info("Mounting persistent disk store migration target");
                mountpoint = Path.Combine(BaseMessage.BaseDir, "store_migraton_target");
            }
            else
            {
                Logger.Info("Mounting persistent disk store");
                mountpoint = storeMountPoint;
            }

            if (!Directory.Exists(mountpoint))
            {
                Directory.CreateDirectory(mountpoint);
            }

            Logger.Info(String.Format(CultureInfo.InvariantCulture, "Mount Partition {0} {1}", diskId, mountpoint));

            int returnCode = DiskUtil.MountPartition(diskId, mountpoint);

            if (returnCode != 0)
            {
                throw new MessageHandlerException(String.Format(CultureInfo.InvariantCulture, "Failed mount disk {0} on {1}. Exit code: {2}", diskId, mountpoint, returnCode));
            }
        }
 public static bool CheckMountPoints()
 {
     if (DiskUtil.IsMountPoint(BaseMessage.StorePath) && DiskUtil.IsMountPoint(BaseMessage.StoreMigrationTarget))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }