Kontinuierliche Integration - Erstellen Sie Skripte
Schauen wir uns nun bestimmte Aspekte der MSBuild-Datei an, um zu sehen, was sie bedeuten. Diese Aspekte sind wichtig, um sie aus einem kontinuierlichen Integrationszyklus zu kennen.
Build-Skripte werden verwendet, um die Lösung zu erstellen, die Teil des gesamten kontinuierlichen Integrationszyklus ist. Schauen wir uns das allgemeine Build-Skript an, das als Teil von Visual Studio in erstellt wird.Netfür unsere Musterlösung. Das Build-Skript ist selbst für eine einfache Lösung ziemlich umfangreich, daher werden wir die wichtigsten Teile davon durchgehen. Standardmäßig wird das Build-Skript in einer Datei mit demselben Namen wie die Hauptlösung in Visual Studio gespeichert. Also in unserem Fall, wenn Sie die Datei öffnenSimple.csprojsehen Sie alle Einstellungen, die zum Erstellen der Lösung verwendet werden.
Abhängigkeit von der verwendeten MSBuild-Version - In den folgenden Einstellungen werden die auf dem CI-Server installierten MSBuild-Dateien verwendet.
<VisualStudioVersion Condition = "'$(VisualStudioVersion)' ==
''">10.0</VisualStudioVersion>
<VSToolsPath Condition = "'$(VSToolsPath)' == ''">
$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
</VSToolsPath>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<Import Project = "$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project = "$(VSToolsPath)\WebApplications\
Microsoft.WebApplication.targets" Condition = "'$(VSToolsPath)' ! = ''" />
<Import Project = "$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\
WebApplications\Microsoft.WebApplication.targets" Condition = "false" />
Welche Dateien sind erforderlich, um die Lösung ordnungsgemäß zu erstellen? ItemGroupDas Tag enthält alle erforderlichen .NET-Dateien, die für die erfolgreiche Erstellung des Projekts erforderlich sind. Diese Dateien müssen sich entsprechend auf dem Build-Server befinden.
<ItemGroup>
<Reference Include = "Microsoft.CSharp" />
<Reference Include = "System.Web.DynamicData" />
<Reference Include = "System.Web.Entity" />
<Reference Include = "System.Web.ApplicationServices" />
<Reference Include = "System.ComponentModel.DataAnnotations" />
<Reference Include = "System" />
<Reference Include = "System.Data" />
<Reference Include = "System.Core" />
<Reference Include = "System.Data.DataSetExtensions" />
<Reference Include = "System.Web.Extensions" />
<Reference Include = "System.Xml.Linq" />
<Reference Include = "System.Drawing" />
<Reference Include = "System.Web" />
<Reference Include = "System.Xml" />
<Reference Include = "System.Configuration" />
<Reference Include = "System.Web.Services" />
<Reference Include = "System.EnterpriseServices"/>
</ItemGroup>
Welche Webservereinstellungen müssen verwendet werden? Wenn Sie unser Thema "Kontinuierliche Bereitstellung" besuchen, werden Sie sehen, wie MSBuild verwendet wird, um diese Einstellungen zu überschreiben und auf dem Server Ihrer Wahl bereitzustellen.
<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>59495</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl></IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>