2013-04-25 12 views
5

Ich habe heute viele Dinge ausprobiert, um meinen Build in Teamcity zum Laufen zu bringen, aber ohne Erfolg.TeamCity Build Failure

Hier ist mein Setup.

Ich habe 2 Build-Konfigurationen in Teamcity

  1. Build Solution
  2. Build Deployment Package Debug

Build Solution von einem SVN checkin ausgelöst und baut die Lösungsdatei. Diese Konfiguration funktioniert einwandfrei.

Build Deployment Package Debug hat Build Solution als seine Abhängigkeit und hat zwei (MSBuild) Build-Schritte. Die Lösung enthält zwei Websites: ein Frontend und ein Admin. Ein Build-Schritt erstellt die Front-End-Site und die andere die Admin-Site. Das Endergebnis ist, dass es die kombinierten Ergebnisse in eine ZIP-Datei für die Bereitstellung auf dem Deployment Server bringt (ich habe dieses Bit noch nicht).

Das Problem, das ich habe, ist, dass die Build Deployment Package Debug Konfiguration fehlschlägt, versuchen, die erste Website zu erstellen. Dies ist der Fehler:

[18:40:25]Step 1/2: Web (MSBuild) (29s) 
[18:40:28][Step 1/2] x.Web\x.Web.csproj.teamcity: Build target: Build (27s) 
[18:40:50][x.Web\x.Web.csproj.teamcity] MvcBuildViews (4s) 
[18:40:50][MvcBuildViews] AspNetCompiler (4s) 
[18:40:55][AspNetCompiler] C:\BuildAgent\work\252ec59002ecc2d\x.Web\obj\debug\csautoparameterize\original\web.config(39, 0): error ASPCONFIG: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. 
[18:40:55][x.Web\x.Web.csproj.teamcity] Project x.Web\x.Web.csproj.teamcity failed. 
[18:40:55][Step 1/2] Step Web (MSBuild) failed 

sind hier Paramter bauen -> Systemeigenschaften

Name Value 
system._PackageTempDir c:\deploypackage 
system.Configuration  Debug 
system.CreatePackageOnPublish True 
system.DeployIisAppPath Debug 
system.DeployOnBuild  True 
system.PackageLocation c:\buildshares\Debug\Debug.zip 
+1

Warum die negative Stimme? Ich stellte eine gültige Frage und lieferte viele relevante Details. –

+0

mögliches Duplikat von [Teamcity-Fehler bei MVC 4 und .NET 4.5] (http://stackoverflow.com/questions/16219319/teamcity-error-with-mvc-4-and-net-4-5) –

+0

Mögliches Duplikat von [allowDefinition = 'MachineToApplication' Fehler beim Veröffentlichen von VS2010 (aber nur nach einem vorherigen Build)] (http://stackoverflow.com/questions/2566215/allowdefinition-machinetoapplication-error-when-publishing-from-vs2010-but-on) – JotaBe

Antwort

18

Hier sind, was ich tue dies zu lösen

hatte ich bereits in meiner Projektdatei

<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'"> 
    <AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" /> 
</Target> 

Aber ich musste dies auch

hinzufügen
<Target Name="AfterBuild"> 
    <RemoveDir Directories="$(BaseIntermediateOutputPath)" /> 
</Target> 

Dadurch wurde das Problem behoben.

Ich hoffe, dass dies jemand anderen hilft, der in Zukunft an TeamCity arbeitet.

+1

Es gibt viele SO Antworten auf dieses Problem, aber das ist das einzige, das tatsächlich für mich funktioniert hat. Meine Konfiguration ist ein VS11-Projekt, das von VS10 konvertiert wurde, BuildMvcViews nur in Release aktiviert hat und jetzt die Veröffentlichungsprofile verwendet. msbuild/p: DeployOnBuild schlug mit dem Fehler web.config fehl (obwohl das Paket tatsächlich veröffentlicht wurde ...). Das hat es behoben. –

+1

Arbeiten bei 1. Schuss! Danke –

+2

danke für das Zurückkommen, um dies zu beantworten. riss mir die Haare aus – spaceman

Verwandte Themen