TFS 2010 - Custom Creation Actions Not Deployed

In my teambuild, we use custom build process operations that are deployed to

\BuildProcessTemplates\CustomAssemblies\MyActivities.dll 

The assembly controller is configured to load assemblies from this path.

If I checked new assemblies, then teambuild automatically downloads new assemblies, but uses the old ones. In fact, the last build process template seems to be used because I get an error:

 "TF215097: An error occurred while initializing a build for build definition <myTemplate> Cannot create unknown type <any new type>" 

If I restart the assembly controller services, the latest assemblies are taken into account.

How can I get teambuild to automatically load the latest builds without having to restart the controller?

+4
source share
3 answers

Finally figured it out. For several months I got nuts. Even if your binaries are technically different (i.e. Binary differences), it seems that the agents only update if the version of the file is different.

So, in my version of "MyActivities.dll" I had to increment the following two lines in my AssemblyInfo.cs (the old version was 1.0.0.0):

 [assembly: AssemblyVersion("1.0.0.1")] [assembly: AssemblyFileVersion("1.0.0.1")] 

As soon as I did this, I did the normal build assembly and then checked in the new binaries. Agents have been updated with new versions within minutes !: D

Other (less intimidating) options if you cannot update the version for any reason:

  • Check the dummy file for the same directory. If any files are added / removed from the CustomAssemblies directory, it forces all files to be updated.
  • Change the value "Version control path to custom assemblies:" to some dummy value (no matter where), apply the new value and then return to the original directory. Every time the path changes, it forces an update for all files

The β€œbest” solution is to simply upgrade the file / assembly version.

+5
source

Try installing MyActivities.dll in the GAC. I have all my own builds in the GAC, and I have not noticed any problems.

+1
source

When you register files on the source control path controlled by the assembly controller, the controller must pick up the last dll when it starts assembling.

In my case, when I started the assembly using the same controller in which I made some changes after a while during the assembly, the controller automatically restarts and this assembly did not work, stating that the assembly process failed. The bcoz controller stopped as part of a restart operation .

He tried to get the latest dll, but as part of a restart operation.

, therefore, are there any conditions or scenarios for restarting the controller ... ???

Installing MyActivities.dll in the GAC ???. What will he do and how can this help me with my problem.

I ran this assembly and got the error below.

Build stopped because the 'Mycontroller-Controller' build controller is unavailable: the status of the controller has been changed by the build service on 1/6/2014 9:31:14 AM GMT. Reason: The Mycontroller - Controller service is being stopped as part of a restart operation.

I did some checks in assemblies, so I think the controller rebooted to get the latest assemblies, and so I got this error.

Here How does a restart start? Are there any other conditions / scenarios in which the controller restarts?

+1
source

Source: https://habr.com/ru/post/1383570/


All Articles