public static string GetServiceRootPath(string currentPath)
{
// Get the service path
string servicePath = FindServiceRootDirectory(currentPath);
// Was the service path found?
if (servicePath == null)
{
throw new InvalidOperationException(Resources.CannotFindServiceRoot);
}
CloudServiceProject service = new CloudServiceProject(servicePath, null);
if (service.Components.CloudConfig.Role != null)
{
foreach (RoleSettings role in service.Components.CloudConfig.Role)
{
string roleDirectory = Path.Combine(service.Paths.RolesPath, role.name);
if (!FileUtilities.DataStore.DirectoryExists(roleDirectory))
{
throw new InvalidOperationException(Resources.CannotFindServiceRoot);
}
}
}
return servicePath;
}