I am trying do manually deploy unicorn serialized yml files into my QA server. But, I am getting exception even while loading the Sitecore instance.

I have copied all the feature/foundation/project folders, except the code folders inside them. Hence, all the folders have only serialization folder. The same path is mentioned in the source path for unicorn as. Am I missing any thing here?

Please help me in understanding how to manually deploy yml files.

Following is the exception:

[IOException: The device is not ready.]   
System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +1093    System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj, Boolean checkHost) +1258   
System.IO.Directory.InternalCreateDirectoryHelper(String path, Boolean checkHost) +64   
Rainbow.Storage.SerializationFileSystemDataStore.InitializeRootPath(String rootPath) +346   
Rainbow.Storage.SerializationFileSystemDataStore..ctor(String physicalRootPath, Boolean useDataCache, ITreeRootFactory rootFactory, ISerializationFormatter formatter) +233    
lambda_method(Closure, Object[] ) +246
Configy.Containers.MicroContainer.Activate(Type type, KeyValuePair2[] unmappedConstructorParameters) +819   
Unicorn.Configuration.<>c__DisplayClass8_0.<RegisterConfigTypeInterface>b__3() +38
System.Lazy1.CreateValue() +242    
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() +31   
System.Lazy1.get_Value() +14803913   
Unicorn.Data.ConfigurationDataStore.RegisterForChanges(Action2 actionOnChange) +19   
Unicorn.Data.DataProvider.UnicornDataProvider..ctor(ITargetDataStore targetDataStore, ISourceDataStore sourceDataStore, IPredicate predicate, IFieldFilter fieldFilter, IUnicornDataProviderLogger logger, IUnicornDataProviderConfiguration dataProviderConfiguration, ISyncConfiguration syncConfiguration, PredicateRootPathResolver rootPathResolver) +546    
lambda_method(Closure , Object[] ) +402   
Configy.Containers.MicroContainer.Activate(Type type, KeyValuePair2[] unmappedConstructorParameters) +819   
Configy.Containers.MicroContainer.Resolve() +118   
System.Linq.WhereSelectArrayIterator2.MoveNext() +75   
System.Linq.Buffer1..ctor(IEnumerable1 source) +162   
System.Linq.Enumerable.ToArray(IEnumerable`1 source) +106   
Unicorn.Data.DataProvider.UnicornSqlServerDataProvider..ctor(String connectionString) +219
  • 3
    your targetDataStore is pointing to a drive that does not exist in your target environment. Make sure to update this setting across environments.
    – Mark Cassidy
    Commented Sep 29, 2017 at 14:18
  • Also make sure you give the App Pool user of your site read/write permissions to the serialization folder.
    – Chris Auer
    Commented Dec 27, 2017 at 2:18

1 Answer 1


Ran into this issue deploying Habitat to Azure VM. Here is quick solution based on Mark Cassidy's response.

Culprit is the below file. Your file location may be different. but I guess you got the location we are pointing to.


In this file

<?xml version="1.0"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
    <sc.variable name="sourceFolder" value="E:\\Projects\\Habitat\\src" />

Verify the sourceFolder value. This may be pointing to a drive which may not be existing. As this is what happened in my case.

Once I changed it to C:\Habitat I am able to see the Sitecore login page.

Hope this helps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.