Custom Build Activities Type is greyed out in Build Definition editor

Lately I am quite busy with building Custom Build activities for TFS 2012. I also did this in TFS 2010 but it seems that I avoided some issues there.

In my previous blog posts I described some migration issues with TFS build. This is about an issue I had with Custom Build Activities.

Build Controller – Version Control Path to custom assemblies

I walked into this issue when I refactored my custom build solution that I initially build in VS2010 to VS2012. Everything worked like a charm in VS2010 but not in VS2012. When opening my custom template in the build definition editor, it behaved strange.

My Custom Types were not recognized and all the information I had configured in the Build Template Meta Data was not displayed correctly. My display names and categories were missing. I saw ..

image

instead of

image

When digging a bit through the error messages and in the build output window I remembered the Build Controller Path to the Custom Assemblies.

image

This point to a place in Source Control where my Custom Assemblies were located. When I navigated there I saw a list of all my Custom Assemblies but also some Microsoft.TeamFoundation Assemblies.
image

The error was in here !. When I first deployed my Custom Build Assemblies I deployed the contents of the bin directory. So this included my TeamFoundation assemblies. This always worked because my assemblies were referencing TFS 2010 and the build server was also referencing TFS 2010. Now that I upgraded to TFS 2012 the references became invalid because the build server required VS 2012 assemblies but only found VS 2010 instead.

When I removed the VS2010 assemblies from the Custom Assemblies Path, everything worked like a charm.

3 Responses to “Custom Build Activities Type is greyed out in Build Definition editor”

  1. Factastic !! it worked great!!!

  2. Hi Rene. I am currently working at a custom build process template at one of our clients. I have added quite some custom activities in the meantime and it all works pretty well. I just encountered an issue that I am not able to solve for days. Hopefully you are willing to point me in the right direction. I have a custom activity that calls a “ScheduledActivity”. This works great on all my build-agents, however on my test-environment (where I am tuning my process templates without having to annoy the developers) this ScheduledActivity just seems to hang indefinitely. I tried to start it and be patient, but after several hours the process still did not complete, but no timeout appeared either. How can I debug such a thing properly?


    context.ScheduleActivity(FindMatchingFilesCodeActivity, MatchingFilesMethod);

    • Hi Robin,

      I always use a Unit test project to test my build activities. If needed you can use the Remote Debugger and attach to the build process to debug. Unfortunately these are your only options..

      Good luck !