9

Is there a way to build TDS projects without it trying to deploy anything? Essentially, I just want to make sure all the files that the scproj files think should be there are actually checked into source control.

We are having a fairly consistent issue where certain fields are added to the TDS project but ultimately don't make it into source control. Even with auto-sync enabled.

I enabled the Build action (and left Deploy unchecked) on the TDS projects for our CI build configuration, but the build failed with:

Deploy failed. Reason:

Could not find the TDS service located at 'http://local-dev-url/_DEV/TdsService.asmx'. Please verify that the deployment properties for the current configuration are set correctly.

I don't want it to attempt a deploy, I just want the build to validate the structure of the TDS project and fail if files are missing.

13

I've had this same issue with deployments, the simple fix for us was to set Source Web Project to None on the General tab.

TDS General Tab

This does mean that TDS will not generate code packages, but we do not use those in our build process, we only use TDS to generate Item packages.

Also leave the Sitecore Web Url and Sitecore Deploy Folder empty for Release build:

Build tab

  • This ultimately fixed our issue - setting Source Web Project to "none" AND removing the Sitecore Web Url and Sitecore Deploy Folder fields. I also disabled installing the connector globally, for this particular solution configuration. Thanks! – LonghornTaco Nov 1 '16 at 17:18
6

In the TDS project properties, in the Build tab, you can check Disable file deployment and it won't deploy the .Update file on building.

At the top of this window is a build configuration drop-down, so you can amend this setting for the particular configuration you use for your CI build.

The property goes into the .scproj file as a regular MS Build property, so if you need to do some custom funky logic with your build-server, this is the relevant property:

<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
    ...
    <DisableFileDeployment>True</DisableFileDeployment>
    ...
</PropertyGroup>

However, this just addresses the deployment of the .update file, which I'm not 100% sure is the issue you are facing. In CI builds, you would usally have the IsDesktopBuild property set to False to inform TDS that this is a CI build and therefore it should deploy. To disable this functionality, you should be able to specify this property and set it to True.

This is usually a property you need to explicitly enable however, so I'm really unsure as to why it would automatically try to deploy if you haven't configured this functionality to specifically do so.

  • Disabled file deployment, but still getting the same error. – LonghornTaco Oct 31 '16 at 15:46
  • TDS likes to cache like it's going out of fashion. Could you try restarting Visual Studio in case that's it? – Kasaku Oct 31 '16 at 15:57
  • I'm not doing this build through VS - through a TFS build on our build controller. – LonghornTaco Oct 31 '16 at 15:58
  • This got me close, but Kamruz's answer below got me all the way there. Thanks Alex! – LonghornTaco Nov 1 '16 at 17:19
1

Since you are getting an error saying

Could not find the TDS service located at 'http://local-dev-url/_DEV/TdsService.asmx'

This could mean that the Configuration on the your CI build configurations is using "debug" or "local" setting which points to your local website instance, Can you change that to other configuration where you can have your development site settings that the build controller has access to?

For example, on our Development site, we created a new configuration called "dev" and with TDS properties for that configurations we added our development site details, Like Web URL and Deploy folder.

  • I have double checked our build configuration and it is using the appropriate value for $(BuildConfiguration). My trouble isn't that it's not finding the site, my problem is that it's attempting to deploy it in the first place. I don't want it to attempt to deploy anything with this build configuration. – LonghornTaco Oct 31 '16 at 16:29
  • @LonghornTaco I see, Thats weird, i'm not getting that behavior on our environment, What TDS version are you using? – Ahmed Okour Oct 31 '16 at 16:36
  • We're using version 5.5.0.15 – LonghornTaco Oct 31 '16 at 16:39
1

If I am doing a 'health check' sort of setup where I want it to compile the items but not deploy them, I typically set up the project to generate a package instead of executing a deployment. In addition, ensure file deploy is disabled and the SitecoreWebUrl is blank will make sure it doesn't reach out to anywhere to do any funny stuff.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.