Skip to content
March 9, 2017 / kiranpatils

Quick Helix deployment approach

Challenge:

I have been looking at a why, how we can deploy Helix approached solution without adding lot of tools and complexities. After investing some quality time. Have been able to do it. Few tweaks are required to this process. So, it can be automated. But basic idea should get you going!

Solution:

As you know each Foundation/Feature/Project – might have one web project Files which needs to be deployed to webroot. And TDS Items as well. Let’s look at each of them:

  1. Files : To deploy files, I prefered to use my old and gold – Web deploy! As you know for webdeploy and Visual studio publish for web project to work you need .pubxml and it holds few configurations. To centralize those configurations, here’s what we did:
    1. In Configuration folder created .targets file e.g. scbasics-pubsettings.targets
    2. Which contains publish related configurations  e.g. WebPublishMethod,MSDeployServiceURL etc.
    3. Each Web Project has its own .pubxml file which points to .targets file which we created earlier <Import Project=”..\..\..\..\..\..\Configuration\scbasics-publishsettings.targets” />
    4. So, using above approach, Configurations are centralized. So, in case if you have to change anything. You change it at one place rather than changing lot of places [depends on your feature/foundation/project count]
  2. TDS : We had access of Target server using HTTP. So, we just added required configuration in TdsGlobal.Config for that particular environment. And TDS is smart enough to take care of it!

I have not been able to hook it with Teamcity and do automated deployment yet. But when I do it using .sln — I can foresee only one challenge — Build ordering – Because your project should be built at last and it should copy root’s Web.Config. But that can be resolved with some ways — Which I’ve left for you! 🙂 Or you know If I spend time on it, will share with you — I expect the same! 😉

One more Helix puzzle resolved!

Happy Deployment! 🙂

Advertisements

2 Comments

Leave a Comment
  1. Sean Holmesby (@seanholmesby) / Mar 10 2017 4:10 am

    Here are a bunch of tips for deploying Helix (using TDS) projects faster.
    http://sitecore.stackexchange.com/questions/4076/slow-build-performance-using-tds-helix-inspired/4114#4114

    In the Habitat TDS version, I just use TDS’s file deployment to copy my changes over….not WebDeploy. So I just Build the solution, and my build output is automatically sent to my webroot folder.
    This takes care of file deployment and gets the settings from TDS….and the demo solution is also setup correctly to handle the build order.

    – Sean

Trackbacks

  1. Helix, 8.2 DI and An error occurred when trying to create a controller of type ‘ScBasics.Feature.Nav.NavController’. Make sure that the controller has a parameterless public constructor | Sitecore basics!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: