À 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.
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.
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é.
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.
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
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.
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
[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.