Upgrading NuGetter to VS 2012

Nov 13, 2012 at 11:01 PM
Edited Nov 14, 2012 at 1:07 AM

Hi guys,

I am trying to upgrade the NuGetter from VS 2010 to VS 2012. I performed the following steps:

  1. Downloaded the latest source code from this codeplex project.
  2. Open the solution in VS 2012.
  3. Set the project framework to .NET 4.5.
  4. Updated the assembly references to version 11.0.0.0
  5. Added reference to TfsBuild.Versioning.Activities (1.5.1.0)
  6. Opened the XAML files, replaced any occurrence of the string "10.0.0.0, culture..."  with "11.0.0.0"
  7. I built the project. Built OK.
  8. I ran the unit tests. All passed.
  9. copied the 3 build templates and TfsBuild.NuGetter.Activities.dll to source control to be consumed by a newly created build definition.
  10. I created a new build definition; I queue a build; I receive an error saying:

 "TF215097: An error occurred while initializing a build for build definition \Test\New Build Definition 2: The invocation of the constructor on type 'TfsBuild.NuGetter.Activities.PerformNuGetPack' that matches the specified binding constraints threw an exception."

Also, originally when I upgrade the build templates and open the designer there were no errors. But, after transferring these XAML files over to the source control and open them (ex: NuGetterStandardBuildTemplate.xaml)  in WF designer I see a text with red background saying:

 "Activity could not be loaded because of errors in the XAML"

looking at the imported namespaces, I see that TfsBuild.NuGetter.Activities has a blue exclamation mark saying:

"Namespace TfsBuild.NuGetter.Activities cannot be resolved"

Similar question was ask as well http://nugetter.codeplex.com/discussions/394650

Any insight into this problem is appreciated?

Nov 16, 2012 at 6:30 PM
Edited Nov 16, 2012 at 7:54 PM

I have resolved my issue.

If you are looking for NuGetter version that works with VS 2012, you can download the code from: 

http://www.codeplex.com/Download?ProjectName=nugetter&DownloadId=533650

If you are looking for TfsVersioning version that works with VS 2012, you can download the code from:

http://www.codeplex.com/Download?ProjectName=tfsversioning&DownloadId=533652

I had a build error because of the assemblies placed in the GAC by the VS 2010 SDK. I had to uninstalled the VS 2010 SDK and installed VS 2012 SDK. 

Coordinator
Jan 23, 2013 at 3:26 PM

NuGetter (2.0) is now officially updated for TFS 2012.

Mark

Jan 24, 2013 at 3:10 PM

Still having same issue with Nugetter 2.0

I am unable to add the PerformNugetPackage item in my xaml.

Coordinator
Jan 24, 2013 at 3:43 PM

Sorry, you're going to have to add some detail here.  I assume that you have a XAML build workflow that you're trying to modify with the NuGetter activities. but that's all that I can assume.  Errors when you try to add it?  Added it but errors when you run it?

Mark

Jan 26, 2013 at 11:56 PM

Had same issues as starting post.
But in the end it was since I was missing the TfsVersioning dll in my references.

What I do got is issues with is the 'CreateOnly' attribute. I have a custom build xaml and I started a new one now for tfs 2012. I copied my Nugetter parts from the custom one. Now it complains about the createonly attribute on my PerformPackage acitvity. I says it doesnt support that anymore.
If I run it on TFS it will complain too.

After some moving and copying I now have the following exception in TFS when I build:

F215097: An error occurred while initializing a build for build definition xxx:
Exception Message: The values provided for the root activity's arguments did not satisfy the root activity's requirements:
'DynamicActivity': Expected an input parameter value of type 'Microsoft.TeamFoundation.Build.Workflow.Activities.BuildSettings' for parameter named 'BuildSettings'.
'DynamicActivity': Expected an input parameter value of type 'Microsoft.TeamFoundation.Build.Workflow.Activities.TestSpecList' for parameter named 'TestSpecs'.
Parameter name: rootArgumentValues (type ArgumentException)

I have put the Createonly attribute in the xaml (threw code view), but it gives errors in Visual Studio when I view it (in designer view)

Coordinator
Jan 27, 2013 at 4:58 AM

CreateOnly was an option with a previous version of the NuGet command console application.  That option was removed some time prior to the current version (V2.2). Because of that I had to remove the option from the NuGetter build assembly and the build templates.  If you look at either of the NuGetter 2.0 build template XAML files you can see the arguments that are accepted from the build definition and the ones that are passes into the NuGetter workflow.  They were both created using the latest TFS 2012 build templates and should show you the way toward integrating the NuGetter process into your custom XAML files.

The other errors look like mismatches between what the 2012 build process is expecting and what your XAML build file is using.

Mark

Feb 4, 2013 at 3:04 PM
marknic wrote:
NuGetter (2.0) is now officially updated for TFS 2012. Mark
Haven't been able to get it working with 2010. Is it officially 2012 only now?
Coordinator
Feb 4, 2013 at 3:10 PM
That is correct because of the build templates. They are specific to TFS 2012 because of the subtle changes made to the TFS 2012 build workflow.

Mark