Blog

Deployment Properties and the Deployment Property Manager

April 04, 2017 | Tom Kamin

TDS Classic Deployment Property Manager 

When working with TDS Classic, you will eventually need to deploy your items to a Sitecore instance and you might not want the default behavior of every item in your TDS Classic project deploying every time. This is where the Deployment Property Manager comes in! You can open it by right-clicking on your TDS Classic project and selecting “Deployment Property Manager”. This will open the Deployment Property Manager dialog with all items in that project viewable. You may also open the dialog by right-clicking on any of the items in your TDS Classic project. This will narrow the scope to said item and its children.

TDS Sitecore Deployment Property Manager

The top part of the dialog contains a tree structure of the items in the project along with the settings currently selected for those items. The bottom portion of the dialog is where we can modify these settings.

The first property we can modify is the Item Deployment. This determines how TDS Classic will handle the item at deployment. There are two possible options:

  • Deploy Once – TDS Classic will only deploy the item if that item doesn’t exist in Sitecore. If it does exist, TDS Classic will ignore the existing item.
  • Deploy Always – TDS Classic will always deploy the item to Sitecore, overwriting the item if it is already in Sitecore.

The next property we can modify is the Child Item Synchronization. This tells TDS Classic how to manage the children Sitecore items that are not in the TDS Classic project. Here we have three options:

  • None – TDS Classic will ignore any items that are descendants of the current item
  • Synchronize All Children – TDS Classic will remove any descendants of the current item that are not stored in TDS Classic. If this option is selected all descendants of the current item will be updated to this setting.
  • Synchronize Direct Descendants – TDS Classic will remove only the direct descendants of the current item that are not stored in TDS Classic.

The final property we can change is Exclude from Configuration. Selecting a checkbox next to the build configuration name will exclude the selected item and all its children from that build configuration.

Clicking the Set all Descendant Properties button will change all the properties of the currently selected item’s children to the same settings of the currently selected item. Clicking the Inherit Parent Properties button will update properties of the currently selected item to match the parent.

Tips for working with deployment properties

The default settings for an item added to your TDS Classic project will have Item Deployment set to Deploy Always and Child Item Synchronization set to None. But, if the item added to your TDS Classic project has a parent item already included in your TDS Classic project it will inherit its settings from the parent. 

When adding Sitecore items to your TDS Classic project that are part of a default Sitecore install, we recommend setting the Item Deploy to Deploy Once and the Child Item Synchronization to None. This will prevent TDS Classic from unnecessarily deploying items and may increase the speed of your deployments and item synching tasks.

If you have an item where only a portion of the fields need to be Deploy Always, take a look at the Field Level Deployment dialog. This can be opened by right-clicking on the item in your TDS Classic project and clicking on "Field Level Deployment". For example, this is useful for items that have content that needs to be editable, but also requires security permissions be applied. Just set your item to Deploy Once and in the Field Level Deployment dialog check the box for the __Security field.

For more tips and tricks on how to get the most our of TDS Classic, visit the blog or follow us on Twitter. 

TDS Classic deployment development

Related Blog Posts

Azure Sitecore Deployment: Deploying to a Slot
Setting up Azure staging slots, so the next release of our project can be placed there, allows us to deploy the new code to a private website (the slot), and test it before pushing it live. We are going to script this process to make it easier for the devops team to automate.
TDS Classic Best Practices: NuGet Build Components and TDS Classic .user configs
There are certain systems and processes that you can put in place to make a TDS Classic project run more smoothly. We're highlighting the best practices that our team recommends for getting the most out of TDS Classic.
Azure Sitecore Deployment: Adding Project's Code and Items to the Azure Deployment
Modify the scripts so that the compiled LaunchSitecore site is also provisioned into the new XP environment.
TDS Classic Best Practices: Bundle Packages, Delta Builds and Delta Packages
Following TDS Classic best practices, like using Delta Builds and Delta Packages, can make the entire development experience run much more smoothly.
Azure Sitecore Deployment: Adding Custom Modules
Modify the previous install so that the initial install contains the Sitecore Package Deployer module. It is an excellent way to enable continuous integration to the website.
TDS Classic Best Practices: Validators and the Sitecore Package Deployer
TDS Classic can be used in many ways, but the goal is always the same: make development (and developers lives) easier. Whether it's using the Sitecore Package Deployer or using validators, following best practices can make your entire experience run much more smoothly.
Azure Sitecore Deployment: Preparing the Default Scripts and Packages
Preparing the default packages for a Sitecore Azure deployment and extending to add a custom module to the install.<br> <br> <br> <br> <br>
Azure Sitecore Deployment: Setting Up the Solution and VSO Build
<p>The first in our series on setting up a Sitecore instance on Azure, with an initial deployment that includes custom built modules as add-ons to the setup.</p>
Troubleshoot and Prevent Failed TDS Classic Project Builds
When building an .update package with TDS Classic, the build might fail with no additional information. From increasing log verbosity to using validators, there are ways to minimize or prevent this type of error.
TDS Classic How-To: Disable Automatic Code Generation
Code Generation is automatically triggered after every change in the TDS Project tree. If a project contains many items, users can disable this feature for their convenience.
TDS Classic Sitecore Deploy Folder
Sitecore Deploy Folder is a setting, located in the build tab of the TDS Classic Project's Properties page, and used to tell TDS Classic where the webroot is located.<br>
TDS Classic Builds on Jenkins Build Server with NuGet Packages
Our simple scenario includes 2 developers using TDS Classic and checking-in changes to source control. The Jenkins build server takes the changes and performs the build, and then deploys the created package to two Sitecore environments.
Features to Improve Sitecore Development: TDS Classic Strikes Back
Each and every feature in TDS Classic is aimed at helping developers. Whether the feature is out front or running quietly in the background the goal is always the same: make the development experience better. &nbsp;&nbsp;
Feydra and the Virtual Sandbox
Feydra virtualizes all front end assets (css, js &amp; cshtml) of a Sitecore instance. With Feydra, front-end developers can commit their changes to Source Control without requiring the intervention of a back-end developer. We call it a virtual sandbox.&nbsp;
Feydra Frequently Asked Questions
Answering a number of excellent questions we've gotten from the community regarding Feydra, including how long it takes to set up a Feydra environment and how to install the product.&nbsp;
TDS Classic Features to Improve Sitecore Development
Each version of TDS Classic comes with the same goal: to make Sitecore development and, by extension, developers, lives easier. Every feature in our products is aimed at making the process better - some of these features aren't quite as well-known as others, but they all help smooth and improve the development experience.
Feydra: A Front-End Assessment
Feydra allowed me to start building the front-end in a very short time with no Sitecore experience, and it let me use tools that I was comfortable and familiar with.
TDS Classic How-To: Use the HedgehogDevelopment.TDS NuGet Package
The HedgehogDevelopment.TDS NuGet Package allows you to build TDS projects, without the need of installed TDS on the build server machine.
Feydra: A Quick Start Guide
A step-by-step guide for installing, configuring and, most importantly, using Feydra from the front-end.
TDS Classic 5.6 Feature Spotlight - Prevent Deployment of Incorrect Assemblies
This feature, new to TDS Classic 5.6, will prevent a solution from deploying unless all assemblies (except the excluded assemblies we allow you to specify) match what exists in your webroot.&nbsp;
Feydra from the Front-End
Feydra eliminates common roadblocks for designers and front-end developers working on Sitecore projects by getting them up and running more quickly and allowing them to use the development environment and workflow tools they prefer.&nbsp;
TDS 5.6 Feature Spotlight - Project Item Report
This feature, new to TDS Classic 5.6, allows you to create a report of all items in the TDS Classic project.&nbsp;
TDS: The Evolution of Auto-Sync
Auto-Sync has been described as a new feature, but in reality has existed in TDS since 2010 and has taken a new form in TDS 5.5, due to be released March 22, 2016
Team Development for Sitecore Webinar
Our Sitecore MVPs Charlie and Sean recently did a demo of TDS to all Sitecore partners. We recorded the demo to share with the world.