U4-10266 - Package installer need to handle files before handling entities

Created by Claus Jensen 08 Aug 2017, 08:16:05 Updated by Shannon Deminick 09 Aug 2017, 09:48:10

Tags: Unscheduled

Relates to: deploy-364

Subtask of: U4-9609

When files aren't in place when (for example) datatypes are created - you will not immediately see any errors as the files are put where they should be afterwards during the package install.

Deploy however, will trigger generation of signatures and whatnot when saving - and when the files needed for these signatures aren't in place at that time, the signatures and dependencies generated for these entities are actually corrupt.

The fix will involve changing the package installer to handle files on disk before trying to create entities in Umbraco since this is the correct way to handle package installation.

This issue is related to: http://issues.umbraco.org/issue/deploy-364

Comments

Claus Jensen 08 Aug 2017, 09:19:13

Update: apparently the problem occurs when a stylesheet is included in package.xml without having the .css file added explicitly. Then this is considered data and will be handled in the "data" step of package installation. We need to order the events in here so files/stylesheets will be handled before any other "data" being extracted.


Claus Jensen 08 Aug 2017, 11:13:59

PR: https://github.com/umbraco/Umbraco-CMS/pull/2111

Have reordered the installation process so stylesheets and templates (these have no dependencies) are handled before other things like datatypes and doctypes.

Confirmed that this will now generate correct checksums in Deploy when installing a package using a stylesheet only included as "data" (see related issue).


Claus Jensen 08 Aug 2017, 11:38:55

Tested that the USN Starterkit deploys correctly with no issues at all to Cloud - using the above PR. No need to do further testing - just code review.


Shannon Deminick 09 Aug 2017, 09:48:04

Cool, the update order makes sense and if that is solving the issue then perfect.


Priority: Normal

Type: Bug

State: Fixed

Assignee:

Difficulty: Normal

Category:

Backwards Compatible: True

Fix Submitted:

Affected versions: 7.6.5

Due in version: 7.6.6

Sprint: Sprint 65

Story Points: 3

Cycle: 3