Partager via


Créer des applications ASP.NET avec .NET Framework

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Cet article explique comment créer un projet .NET Framework avec Azure Pipelines. Pour les projets .NET Core, consultez Build, test et déploiement d’applications .NET Core.

créer un projet Azure DevOps ;

  1. Dans votre organisation ou collection Azure DevOps, sélectionnez Nouveau projet ou Créer un projet.
  2. Entrez un Nom de projet.
  3. Choisissez la Visibilité de votre projet.
  4. Sélectionnez Créer.

Obtenir l’exemple d’application

L’exemple d’application est une solution Visual Studio qui utilise .NET 4.8. Pour obtenir l’application, fourchez le dépôt GitHub à l’adresse suivante :

https://github.com/Azure-Samples/app-service-web-dotnet-get-started

Créer et générer le pipeline

Une fois que vous avez l’exemple de code dans votre propre référentiel, créez un pipeline dans votre projet Azure DevOps à l’aide des instructions fournies dans Créer votre premier pipeline.

Sélectionnez le modèle ASP.NET . Ce choix ajoute automatiquement le fichier azure-pipelines.yml avec les tâches requises pour générer le code dans l’exemple de référentiel. Le modèle inclut la tâche VSTest@2 pour exécuter des tests. L’exemple de référentiel ne contient pas de tests. Vous pouvez donc supprimer la tâche VSTest@2 du pipeline.

Votre pipeline doit ressembler à l’exemple suivant :

# ASP.NET
# Build and test ASP.NET projects.
# Add steps that publish symbols, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/aspnet/build-aspnet-4

trigger:
- main

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

# ASP.NET
# Build and test ASP.NET projects.
# Add steps that publish symbols, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/aspnet/build-aspnet-4

trigger:
- main

pool: 
  name: default

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

Sélectionnez Enregistrer et exécuter et sélectionner Travaux pour afficher le pipeline en action.

Pour publier les artefacts de build, ajoutez la tâche suivante à la fin de votre fichier YAML :

- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)'
    artifact: 'myartifact'
    publishLocation: 'pipeline'

- task: PublishBuildArtifacts@1
  inputs:
    pathToPublish: '$(Build.ArtifactStagingDirectory)'
    artifactName: drop

Environnement de génération

Vous pouvez utiliser Azure Pipelines pour générer vos projets .NET Framework sans avoir à configurer vous-même une infrastructure. Les agents hébergés par Microsoft dans Azure Pipelines ont plusieurs versions publiées de Visual Studio préinstallées pour vous aider à générer vos projets. Utiliser windows-2022 pour Windows Server 2022 avec Visual Studio 2022.

Vous pouvez également utiliser un agent auto-hébergé pour exécuter vos builds. L’utilisation d’un agent auto-hébergé est utile si vous disposez d’un dépôt volumineux et que vous souhaitez éviter de télécharger le code source sur un nouvel ordinateur pour chaque build.

Vos builds s’exécutent sur un agent auto-hébergé. Vérifiez que la version nécessaire de Visual Studio est installée sur l’agent.

Générer plusieurs configurations

Vous devrez peut-être créer votre application dans plusieurs configurations. Les étapes suivantes créent l’exemple d’application sur quatre configurations : Debug, x86, , Debug, x64Release, x86, et Release, x64.

  1. Dans l’interface utilisateur du pipeline, sélectionnez l’onglet Variables et modifiez les variables suivantes :

    • BuildConfiguration = debug, release
    • BuildPlatform = x86, x64
  2. Sélectionnez Tâches , puis sélectionnez travail de l’agent pour modifier les options suivantes pour le travail :

    • Sélectionnez Multiconfiguration.
    • Spécifier des multiplicateurs : BuildConfiguration, BuildPlatform
  3. Sélectionnez Parallèle si vous avez plusieurs agents de build et que vous souhaitez générer vos paires configuration/plateforme en parallèle.

Restaurer les dépendances

Vous pouvez utiliser la tâche NuGet pour installer et mettre à jour les dépendances de package NuGet. Vous pouvez également utiliser la tâche NuGet pour télécharger des packages NuGet à partir d’Azure Artifacts, de NuGet.org ou d’autres référentiels NuGet externes ou internes.

L’exemple suivant restaure une solution à partir d’un flux d’étendue de projet dans la même organisation.

- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-project/my-project-scoped-feed'
    includeNuGetOrg: false
    restoreSolution: '**/*.sln'