Поделиться через


Создание приложений ASP.NET с помощью платформа .NET Framework

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

В этой статье описывается, как создать проект платформа .NET Framework с помощью Azure Pipelines. Сведения о проектах .NET Core см. в разделе "Сборка, тестирование и развертывание приложений .NET Core".

Создание проекта Azure DevOps

  1. В организации или коллекции Azure DevOps выберите "Создать проект " или "Создать проект".
  2. Заполните поле Имя проекта.
  3. Выберите видимость проекта.
  4. Нажмите кнопку создания.

Получение примера приложения

Пример приложения — это решение Visual Studio, использующее .NET 4.8. Чтобы получить приложение, вилку репозитория GitHub:

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

Создание и сборка конвейера

После создания примера кода в собственном репозитории создайте конвейер в проекте Azure DevOps с помощью инструкций в разделе "Создание первого конвейера".

Выберите шаблон ASP.NET. Этот выбор автоматически добавляет файл azure-pipelines.yml с задачами, необходимыми для сборки кода в пример репозитория. Шаблон включает задачу VSTest@2 для выполнения тестов. Пример репозитория не содержит тестов, поэтому можно удалить задачу VSTest@2 из конвейера.

Конвейер должен выглядеть следующим образом:

# 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)'

Нажмите кнопку "Сохранить и запустить" и выберите "Задания", чтобы увидеть конвейер в действии.

Чтобы опубликовать артефакты сборки, добавьте следующую задачу в конец файла YAML:

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

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

Среда сборки

Azure Pipelines можно использовать для создания проектов платформа .NET Framework без необходимости настраивать собственную инфраструктуру. Размещенные корпорацией Майкрософт агенты в Azure Pipelines имеют несколько выпущенных версий Visual Studio, которые помогут вам создать проекты. Используется windows-2022 для Windows Server 2022 с Visual Studio 2022.

Для запуска сборок можно также использовать локальный агент . Использование локального агента полезно, если у вас есть большой репозиторий, и вы хотите избежать скачивания исходного кода на свежий компьютер для каждой сборки.

Сборки выполняются на локальном агенте. Убедитесь, что на агенте установлена необходимая версия Visual Studio.

Создание нескольких конфигураций

Возможно, потребуется создать приложение в нескольких конфигурациях. В следующих шагах показано, как создать пример приложения на четырех конфигурациях: Debug, x86, , Debug, x64Release, x86и Release, x64.

  1. В пользовательском интерфейсе конвейера выберите вкладку "Переменные" и измените следующие переменные:

    • BuildConfiguration = debug, release
    • BuildPlatform = x86, x64
  2. Выберите "Задачи ", а затем выберите задание агента, чтобы изменить следующие параметры задания:

    • Выберите многофакторную конфигурацию.
    • Укажите умножения: BuildConfiguration, BuildPlatform
  3. Выберите Parallel , если у вас несколько агентов сборки и хотите параллельно создавать пары конфигурации и платформы.

Восстановить зависимости

Задачу NuGet можно использовать для установки и обновления зависимостей пакета NuGet. Вы также можете использовать задачу NuGet для скачивания пакетов NuGet из Azure Artifacts, NuGet.org или других внешних или внутренних репозиториев NuGet.

В следующем примере решение восстанавливается из веб-канала с областью проекта в той же организации.

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