Configuration d'un environnement d'intégration continue .NET pour Jenkins

大家讲道理
Libérer: 2017-01-24 15:43:42
original
2954 Les gens l'ont consulté

À la fin de l'année dernière, grâce à l'introduction de Jenkins par l'entreprise, nous avons fait le premier pas vers l'intégration continue. Cet article n'entrera pas dans les détails sur la façon d'installer Jenkins. L'accent est principalement mis sur la configuration. Environnement .Net. De plus, cet article est basé sur Jenkins installé dans un environnement Windows.

1. Environnement d'installation

Nous devons d'abord préparer plusieurs packages d'installation et les installer sur Windows :

.NET Framework 4.6.1 https://www.microsoft.com/zh-cn/download/details.aspx?id=49982
Microsoft Build Tools 2015 https://www.microsoft.com/zh-CN/download/details.aspx?id=48159
.NET Framework 4.6.1 Developer Pack https://www.microsoft.com/zh-CN/download/details.aspx?id=49978
NuGet x86 Commandline https://dist.nuget.org/index.html

Le premier est bien sûr l'environnement d'exécution familier de .NET Framework

Le second est MSBuild, bien que nous utilisions habituellement Visual Studio. L'interface graphique compile. et publie des programmes, mais en fait Visual Studio appelle MSBuild pour effectuer diverses opérations, donc si nous voulons que Jenkins compile automatiquement le code, nous devons également préparer un ensemble de MSBuild pour cela.

Le troisième package est le .NET Framework 4.6.1 Developer Pack, qui s'appelait auparavant Targeting Pack et contient un certain nombre d'assemblys. Par exemple, les premières versions de Visual Studio 2013 ne disposaient pas de .NET Framework 4.6.1 lors de sa sortie. Si vous souhaitez qu'il le prenne en charge, vous devez installer ce package de développeur. Si vous ne l'installez pas, un message d'erreur vous sera demandé indiquant que les assemblys System.Object et System.Attribute sont introuvables lors de la compilation ultérieure du programme 4.6.1. Le pack de développement 4.6.1 contient le contenu des packs de ciblage 4.0, 4.5 et 4.6. L'installation du package 4.6.1 ne nécessite pas l'installation d'autres versions des packages 4.0. De plus, si vous avez besoin de la prise en charge du chinois, vous devez d'abord installer la version anglaise, puis installer le pack de langue chinoise.

Le dernier élément est le programme console NuGet Avant de compiler le programme, vous devez utiliser NuGet pour restaurer le package. Ce logiciel n'a pas besoin d'être installé, il suffit de le placer dans un emplacement fixe, par exemple sous D:ToolsCI.

2. Installez le plug-in Jenkins

Entrez dans la page de gestion du plug-in Jenkins et installez le plug-in MSBuild à l'adresse : https:// wiki.jenkins-ci.org/display/JENKINS/MSBuild Plugin

Après l'installation, entrez dans l'interface "Global Tool Configuration" :

Recherchez la colonne « MSBuild » sur la page qui s'ouvre, cliquez d'abord sur « Installation MSBuild », puis cliquez sur le bouton « Ajouter MSBuild » pour configurer le chemin d'accès à MSBuild.exe. Depuis que j'utilise MSBuild 32 bits, je peux le configurer comme ceci :

Chemin d'installation par défaut de MSBuild

32位 C:Program Files (x86)MSBuild14.0BinMSBuild.exe
64位 C:Program Files (x86)MSBuild14.0Binamd64MSBuild.exe

N'oubliez pas de le sauvegarder après l'avoir configuré.

3. Configuration du travail Jenkins

Avec l'environnement d'exécution et le plug-in Jenkins prêts, créons un nouveau travail et essayons-le. Notre société utilise Subversion, je vais donc télécharger le code depuis SVN. L'utilisation de Git et d'autres référentiels est également similaire, je vais donc l'ignorer ici.

1. Restaurer le package NuGet

Nous devons ajouter une étape "Exécuter la commande par lots Windows" dans la colonne "Build" pour restaurer la restauration du package NuGet

1 D:\tools\CI\nuget.exe restore .\YourSolutionName.sln
Copier après la connexion

Tout d'abord, spécifiez le chemin de nuget.exe, puis utilisez la commande de restauration pour restaurer le package du fichier de solution YourSolutionName.sln dans le répertoire actuel. Vous pouvez le modifier en fonction de votre situation réelle.

2. Configurez les paramètres de compilation MSBuild

Toujours dans la colonne "Build", créez un nouveau "Build a Visual Studio project or solution using MSBuild" (généré à l'aide de MSBuild VS projet ou solution) étapes

De haut en bas, dans l'ordre :

  • La version MSBuild sélectionnée

  • Le nom du chemin du projet ou du fichier de solution cible

  • Paramètres MSBuild

Ici, nous parlons principalement de " Configuration "Arguments" de la ligne de commande, pour une documentation MSBuild plus complète, veuillez vous référer à MSDN : https://msdn.microsoft.com/zh-CN/library/dd393574.aspx

I j'espère générer un projet ASP .NET MVC et le publier sur le système de fichiers, principalement en utilisant :

  • /t:Rebuild Rebuild

  • /p:Configuration=Release Release build mode

  • /p:VisualStudioVersion=14.0 Spécifiez le sous-ensemble d'outils (https :// msdn.microsoft.com/zh-cn/library/bb383796.aspx), si elle n'est pas définie, une erreur sera signalée

  • /p:DeployOnBuild= True;PublishProfile=Testing-Environment- CI-publish Utilisez Testing-Environment-CI-publish.pubxml pour publier le fichier afin de publier le projet

4. Supplément

[2017 Mis à jour à 09h30 le 24 janvier]

Désolé, j'ai raté ça lorsque j'ai posté l'article hier soir. Si vous utilisez MSBuild pour compiler le projet selon la configuration ci-dessus, vous pouvez rencontrer cette erreur :

Le projet importé "C:Program Files (x86)MSBuildMicrosoftVisualStudiov14.0WebApplicationsMicrosoft.WebApplication.targets" n'a pas été trouvé

Pour le moment, il vous suffit de trouver un ordinateur sur lequel Visual Studio 2015 est installé et de copier tout le contenu du répertoire C:Program Files (x86)MSBuildMicrosoftVisualStudiov14.0 dans le répertoire du Système Windows sur lequel se trouve Jenkins. Téléchargez-le, puis reconstruisez-le, et c'est tout.


Il peut y avoir du contenu sur les tests unitaires xUnit.net intégrés par Jenkins et la publication automatique plus tard, mais je ne sais pas s'il sera disponible il y a des années Je ne peux pas le publier XD

J'espère que l'article pourra être utile à tout le monde.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal