|
| 1 | +--- |
| 2 | +versionFrom: 8.0.0 |
| 3 | +meta.Title: "Umbraco Deploy settings" |
| 4 | +meta.Description: "Various settings for Umbraco Deploy" |
| 5 | +--- |
| 6 | + |
| 7 | +# Configurations for Deployments |
| 8 | + |
| 9 | +The UmbracoDeploy.Settings.config file is empty by default, but there are some optional settings you can set in the file to ignore certain types of file, increase timeout limits, etc. |
| 10 | + |
| 11 | +## ExcludedEntityTypes |
| 12 | + |
| 13 | +This setting allows you to exclude a certain type of entity from being deployed. This is **not** recommended to set, but sometimes there may be issues with the way a custom media fileprovider works with your site and you will need to set it for media files. Here is an example: |
| 14 | + |
| 15 | +```xml |
| 16 | +<?xml version="1.0" encoding="utf-8"?> |
| 17 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 18 | + <excludedEntityTypes> |
| 19 | + <add type="media-file" /> |
| 20 | + </excludedEntityTypes> |
| 21 | +</settings> |
| 22 | +``` |
| 23 | + |
| 24 | +## RelationTypes |
| 25 | + |
| 26 | +This setting allows you to manage how relations are deployed between environments. You will need to specify an alias and a mode for each relationtype. The mode can be either: |
| 27 | + |
| 28 | +- `Exclude` - This causes the relation to be excluded and not transferred on deployments. |
| 29 | +- `Weak` - This causes the relation to be deployed if both content items are found on the target environment. |
| 30 | +- `Strong` - This requires the content item that is related is set as a dependency, so if anything is added as a relation it would also add it as a dependency. |
| 31 | + |
| 32 | +```xml |
| 33 | +<?xml version="1.0" encoding="utf-8"?> |
| 34 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 35 | + <relationTypes> |
| 36 | + <relationType alias="relateParentDocumentOnDelete" mode="Weak" /> |
| 37 | + <relationType alias="relateShopItemOnCreate" mode="Exclude" /> |
| 38 | + </relationTypes> |
| 39 | +</settings> |
| 40 | +``` |
| 41 | + |
| 42 | +## ValueConnectors |
| 43 | + |
| 44 | +This setting is used by package creators who wants their custom editors to work with Deploy. The packages should be creating this setting automatically. There is a community driven package that has value connectors for Deploy called [Deploy Contrib](https://github.com/umbraco/Umbraco.Deploy.Contrib). |
| 45 | + |
| 46 | +Here is an example of how the setting can look: |
| 47 | + |
| 48 | +```xml |
| 49 | +<?xml version="1.0" encoding="utf-8"?> |
| 50 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 51 | + <valueConnectors> |
| 52 | + <valueConnector alias="nuPickers.DotNetCheckBoxPicker" |
| 53 | + type="Umbraco.Deploy.Contrib.Connectors.ValueConnectors.NuPickersValueConnector,Umbraco.Deploy.Contrib.Connectors" /> |
| 54 | + <valueConnector alias="nuPickers.DotNetDropDownPicker" |
| 55 | + type="Umbraco.Deploy.Contrib.Connectors.ValueConnectors.NuPickersValueConnector,Umbraco.Deploy.Contrib.Connectors" /> |
| 56 | + <valueConnector alias="nuPickers.DotNetPrefetchListPicker" |
| 57 | + type="Umbraco.Deploy.Contrib.Connectors.ValueConnectors.NuPickersValueConnector,Umbraco.Deploy.Contrib.Connectors" /> |
| 58 | + <valueConnector alias="nuPickers.DotNetTypeaheadListPicker" |
| 59 | + type="Umbraco.Deploy.Contrib.Connectors.ValueConnectors.NuPickersValueConnector,Umbraco.Deploy.Contrib.Connectors" /> |
| 60 | + </valueConnectors> |
| 61 | +</settings> |
| 62 | +``` |
| 63 | + |
| 64 | +## Timeout settings |
| 65 | + |
| 66 | +Umbraco Deploy have a few built-in timeouts, which on larger sites might need to be modified. You will usually see these timeouts in the backoffice with an exception mentioning a timeout. It will be as part of a full restore or a full deploy of an entire site. In the normal workflow you should never hit these timeouts. |
| 67 | + |
| 68 | +The defaults will cover most though. Changing the defaults by updating the `/Config/UmbracoDeploy.settings.config`. There are four settings available: |
| 69 | + |
| 70 | +- `sessionTimeout` |
| 71 | +- `sourceDeployTimeout` |
| 72 | +- `httpClientTimeout` |
| 73 | +- `databaseCommandTimeout` |
| 74 | + |
| 75 | +These timeout settings default to 20 minutes, but if you are transferring a lot of data you may need to increase it. All of these times are in *seconds*: |
| 76 | + |
| 77 | +:::note |
| 78 | +It's important that these settings are added to both the source and target environments in order to work. |
| 79 | +::: |
| 80 | + |
| 81 | +```xml |
| 82 | +<?xml version="1.0" encoding="utf-8"?> |
| 83 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 84 | + <deploy sessionTimeout="1800" sourceDeployTimeout="1800" httpClientTimeout="1800" databaseCommandTimeout="1800" /> |
| 85 | +</settings> |
| 86 | +``` |
| 87 | + |
| 88 | +## Transfer Forms data as content |
| 89 | + |
| 90 | +In order for Deploy to handle Forms data as content, you'll need to add the following setting to `UmbracoDeploy.Settings.config`: |
| 91 | + |
| 92 | +```xml |
| 93 | +<?xml version="1.0" encoding="utf-8"?> |
| 94 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 95 | + <forms transferFormsAsContent="true" /> |
| 96 | +</settings> |
| 97 | +``` |
| 98 | + |
| 99 | +## Transfer dictionary items as content |
| 100 | + |
| 101 | +In a similar way, Deploy can be configured to allow for backoffice transfers of dictionary items instead of using files serialized to disk, by adding the following setting to `UmbracoDeploy.Settings.config`: |
| 102 | + |
| 103 | +```xml |
| 104 | +<?xml version="1.0" encoding="utf-8"?> |
| 105 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 106 | + <dictionary transferDictionaryAsContent="true" /> |
| 107 | +</settings> |
| 108 | +``` |
| 109 | + |
| 110 | +## Exporting member groups |
| 111 | + |
| 112 | +This setting is to be defined and set to false only if you are using an external membership provider for your members. You will not want to export Member Groups that would no longer be managed by Umbraco but by an external membership provider. |
| 113 | + |
| 114 | +Setting the `exportMemberGroups` to false will no longer export Member Groups to UDA entities on disk. By default if this setting is not present, its value will automatically be set to true as most sites use Umbraco's built-in membership provider and thus will want the membership groups exported. |
| 115 | + |
| 116 | +```xml |
| 117 | +<?xml version="1.0" encoding="utf-8"?> |
| 118 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 119 | + <deploy exportMemberGroups="false" /> |
| 120 | +</settings> |
| 121 | +``` |
| 122 | + |
| 123 | +## Ignore broken dependencies |
| 124 | + |
| 125 | +When restoring or transferring content, Umbraco Deploy will make checks to ensure that any dependent content, media or other items are either present in the target environment, or can be deployed from the source environment. |
| 126 | + |
| 127 | +For example, if you have a media picker on a content item, that references a media item that's been deleted or is in the recycle bin, you'll get an error and the deploy won't complete until the issue is resolved (by removing the reference to the deleted media item). |
| 128 | + |
| 129 | +You can configure deploy to ignore these issues and proceed with the transfer operation without warning, with the following setting: |
| 130 | + |
| 131 | +```xml |
| 132 | +<?xml version="1.0" encoding="utf-8"?> |
| 133 | +<settings xmlns="urn:umbracodeploy-settings"> |
| 134 | + <deploy ignoreBrokenDependencies="true" /> |
| 135 | +</settings> |
| 136 | +``` |
| 137 | + |
0 commit comments