WebMatrix Orchard Install failed

Topics: Installing Orchard
Mar 15, 2011 at 10:29 PM

Hi All,

I recently installed MS Web Platform Installer 3 and WebMatrix. Within WebMatrix, I tried to install Orchard CMS but couldn't finish installing it successfully. The error that I received at the end was:

"This product did not install successfully. This access control list is not in canonical form and therefore cannot be modified."

The View Log link opens big log file but I'm only posting end lines where the error happens

.......................................................

[16:11:250]Adding child filePath (Orchard CMS/Themes\TheThemeMachine\Views\Layout.cshtml).
 Details:
 operationType: AddChild
 providerName: filePath
 path: Orchard CMS/Themes\TheThemeMachine\Views\Layout.cshtml
[16:11:252]Adding child filePath (Orchard CMS/Themes\Web.config).
 Details:
 operationType: AddChild
 providerName: filePath
 path: Orchard CMS/Themes\Web.config
[16:11:253]Adding child filePath (Orchard CMS/Web.config).
 Details:
 operationType: AddChild
 providerName: filePath
 path: Orchard CMS/Web.config
[16:11:254]Source setAcl (Orchard/App_Data) does not match destination (Orchard CMS//App_Data) differing in attributes (isDest,setAclUser,setAclAccess). Update pending.
[16:11:254]Adding setAcl (Orchard CMS//App_Data).
 Details:
 operationType: Add
 providerName: setAcl
 path: Orchard CMS//App_Data
EXCEPTION: System.InvalidOperationException: This access control list is not in canonical form and therefore cannot be modified.
   at System.Security.AccessControl.CommonAcl.ThrowIfNotCanonical()
   at System.Security.AccessControl.CommonAcl.Purge(SecurityIdentifier sid)
   at System.Security.AccessControl.CommonSecurityDescriptor.PurgeAccessControl(SecurityIdentifier sid)
   at System.Security.AccessControl.ObjectSecurity.PurgeAccessRules(IdentityReference identity)
   at Microsoft.Web.Deployment.SetAclProvider.Add(DeploymentObject source, Boolean whatIf)
   at Microsoft.Web.Deployment.DeploymentObject.Add(DeploymentObject source, DeploymentSyncContext syncContext)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleAdd(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildren(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(String provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentWellKnownProvider provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.PlatformInstaller.MSDeployProxy.Install(InstallerContext context, RemoteCredentials remoteCredentials)

 

There is a View Installer Log as well which is as follow:

DownloadManager Information: 0 : Adding product 'OrchardCMS' to the cart
DownloadManager Information: 0 : Starting install sequence
DownloadManager Information: 0 : Downloading file 'http://orchard.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=197216' to: C:\Users\R\AppData\Local\Temp\tmp5C77.tmp
DownloadManager Information: 0 : Content-disposition header: attachment; filename="Orchard.Web.1.0.20.zip"
DownloadManager Information: 0 : Moving downloaded file 'C:\Users\R\AppData\Local\Temp\tmp5C77.tmp' to: C:\Users\R\AppData\Local\Microsoft\Web Platform Installer\installers\OrchardCMS\581EDDFBCDDDD87762A561471896493D0FC6FBA5\Orchard.Web.1.0.20.zip
DownloadManager Information: 0 : Setting DeploymentBaseOptions.WebServerDirectory: C:\Program Files (x86)\IIS Express
DownloadManager Information: 0 : Setting DeploymentBaseOptions.ConfigurationDirectory: C:\Users\R\Documents\IISExpress\config
DownloadManager Information: 0 : Setting DeploymentBaseOptions.WebServerDirectory: C:\Program Files (x86)\IIS Express
DownloadManager Information: 0 : Setting DeploymentBaseOptions.ConfigurationDirectory: C:\Users\R\Documents\IISExpress\config
DownloadManager Information: 0 : Removing parameter: Database Server
DownloadManager Information: 0 : Removing parameter: Database Name
DownloadManager Information: 0 : Removing parameter: Database Username
DownloadManager Information: 0 : Removing parameter: Database Password
DownloadManager Information: 0 : Removing parameter: Database Administrator
DownloadManager Information: 0 : Removing parameter: Database Administrator Password
DownloadManager Information: 0 : Removing parameter: Admin Connection String SqlServer
DownloadManager Information: 0 : Removing parameter: Non-Admin Connection String SqlServer
DownloadManager Information: 0 : Issuing skip directive: objectName=DBFullSql
DownloadManager Error: 0 : MS Deploy exception: System.InvalidOperationException: This access control list is not in canonical form and therefore cannot be modified.
   at System.Security.AccessControl.CommonAcl.ThrowIfNotCanonical()
   at System.Security.AccessControl.CommonAcl.Purge(SecurityIdentifier sid)
   at System.Security.AccessControl.CommonSecurityDescriptor.PurgeAccessControl(SecurityIdentifier sid)
   at System.Security.AccessControl.ObjectSecurity.PurgeAccessRules(IdentityReference identity)
   at Microsoft.Web.Deployment.SetAclProvider.Add(DeploymentObject source, Boolean whatIf)
   at Microsoft.Web.Deployment.DeploymentObject.Add(DeploymentObject source, DeploymentSyncContext syncContext)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleAdd(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildren(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(String provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentWellKnownProvider provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.PlatformInstaller.MSDeployProxy.Install(InstallerContext context, RemoteCredentials remoteCredentials)
DownloadManager Error: 0 : MS Deploy error: System.InvalidOperationException: This access control list is not in canonical form and therefore cannot be modified.
   at System.Security.AccessControl.CommonAcl.ThrowIfNotCanonical()
   at System.Security.AccessControl.CommonAcl.Purge(SecurityIdentifier sid)
   at System.Security.AccessControl.CommonSecurityDescriptor.PurgeAccessControl(SecurityIdentifier sid)
   at System.Security.AccessControl.ObjectSecurity.PurgeAccessRules(IdentityReference identity)
   at Microsoft.Web.Deployment.SetAclProvider.Add(DeploymentObject source, Boolean whatIf)
   at Microsoft.Web.Deployment.DeploymentObject.Add(DeploymentObject source, DeploymentSyncContext syncContext)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleAdd(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.HandleUpdate(DeploymentObject destObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildrenOrder(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.SyncChildren(DeploymentObject dest, DeploymentObject source)
   at Microsoft.Web.Deployment.DeploymentSyncContext.ProcessSync(DeploymentObject destinationObject, DeploymentObject sourceObject)
   at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(String provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentWellKnownProvider provider, String path, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
   at Microsoft.Web.PlatformInstaller.MSDeployProxy.Install(InstallerContext context, RemoteCredentials remoteCredentials)
   at Microsoft.Web.PlatformInstaller.MSDeployPackage.Install(InstallerContext currentInstall, RemoteCredentials remoteCredentials)

Any ideas what am I missing here?

Thanks,

Rajiv

 

Coordinator
Mar 15, 2011 at 10:33 PM

Seems to be a problem with the permissions on the directory where you are trying to install.

Mar 15, 2011 at 11:02 PM

The only folder installation has created so far is in ..\My documents\IISExpress to which I gave full permissions for the user running WebMatrix.exe*32 process on my machine. I'm running windows7 64-bit.

There is another location where there are bunch of folders - ..\AppData\Local\Microsoft\Web Platform Installer\installers\OrchardCMS\581EDDFBCDDDD87762A561471896493D0FC6FBA5.

Thanks for your help.

 

Coordinator
Mar 15, 2011 at 11:08 PM

Yes, unfortunately the error is happening in WebMatrix/WebPI si I have no precise idea what's going on here. I would suggest you ask that question over at http://forums.iis.net/1155.aspx. That is the official forum for that product and they will be able to help you. Let me know how that works.

Mar 16, 2011 at 3:29 PM

Thanks.

I resolved the issue after some troubleshooting. the folder where it is supposed to be installed (..\Documents\My Web Sites\Orchard) needed security permissions. So, giving "My Web Sites" folder permissions (Full control) to the user that is running the WebMatrix install process resolved the issue.