Невозможно опубликовать sh проект из Azure DEVOPS - PullRequest
0 голосов
/ 19 апреля 2020

Я новичок в azure devops и цель обучения создать новую учетную запись basi c с azure. Я создал новые проекты и потребовал изменений. Этот проект публикует код в azure VM и выдает ошибку на последнем шаге.

Шаг: IIS Web App Deploy

Ошибка: пакет не найден с указанным шаблоном. Проверьте, указан ли пакет в задании публикуется как артефакт в сборке или на предыдущем этапе и загружается в текущее задание.

YAML для выпуска:

steps:
- task: IISWebAppManagementOnMachineGroup@0
  displayName: 'IIS Web App Manage'
  inputs:
    IISDeploymentType: '$(Parameters.IISDeploymentType)'
    ActionIISWebsite: '$(Parameters.ActionIISWebsite)'
    WebsiteName: '$(Parameters.WebsiteName)'
    WebsitePhysicalPath: '%SystemDrive%\inetpub\wwwroot\DD'
    AddBinding: '$(Parameters.AddBinding)'
    Bindings: '$(Parameters.Bindings)'
    CreateOrUpdateAppPoolForWebsite: true
    AppPoolNameForWebsite: DD
    ParentWebsiteNameForVD: '$(Parameters.WebsiteName)'
    VirtualPathForVD: '$(Parameters.VirtualPathForApplication)'
    ParentWebsiteNameForApplication: '$(Parameters.WebsiteName)'
    VirtualPathForApplication: '$(Parameters.VirtualPathForApplication)'
    AppPoolName: '$(Parameters.AppPoolName)
    steps:
- task: IISWebAppDeploymentOnMachineGroup@0
  displayName: 'IIS Web App Deploy'
  inputs:
    WebSiteName: '$(Parameters.WebsiteName)'
    Package: '$(System.DefaultWorkingDirectory)/_ABC.API/drop/*.zip'
    RemoveAdditionalFilesFlag: true
    TakeAppOfflineFlag: true
    XmlVariableSubstitution: True

Сборка YAML:

trigger:
- master

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

- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: CopyFiles@2
  inputs:
    SourceFolder: '$(agent.builddirectory)'
    Contents: |
      |
           **\*.runsettings
           **\*FunctionalTest*\**\bin\$(BuildConfiguration)\**
    TargetFolder: '''$(build.artifactstagingdirectory)\FunctionalTests'''


- task: PublishBuildArtifacts@1
  inputs:
    artifactName: 'drop'
    pathToPublish: '$(build.artifactStagingDirectory)'

Журналы ошибок:

2020-04-19T10:02:47.0130907Z ##[section]Starting: IIS Web App Deploy
2020-04-19T10:02:47.0236460Z ==============================================================================
2020-04-19T10:02:47.0236816Z Task         : IIS web app deploy
2020-04-19T10:02:47.0237124Z Description  : Deploy a website or web application using Web Deploy
2020-04-19T10:02:47.0237414Z Version      : 0.156.9
2020-04-19T10:02:47.0237649Z Author       : Microsoft Corporation
2020-04-19T10:02:47.0238051Z Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/deploy/iis-web-app-deployment-on-machine-group
2020-04-19T10:02:47.0238500Z ==============================================================================
2020-04-19T10:02:47.8446908Z ##[error]Error: No package found with specified pattern.<br/>Check if the package mentioned in the task is published as an artifact in the build or a previous stage and downloaded in the current job.
2020-04-19T10:02:47.8471615Z ##[section]Finishing: IIS Web App Deploy

Пожалуйста, помогите найти проблему

1 Ответ

1 голос
/ 20 апреля 2020

Попытка изменить раздел Package, чтобы использовать путь из pathToPublish, по умолчанию это было System.DefaultWorkingDirectory.

- task: PublishBuildArtifacts@1
  inputs:
    artifactName: 'drop'
    pathToPublish: '$(build.artifactStagingDirectory)'

Изменение в IISWebAppDeploymentOnMachineGroup задача:

- task: IISWebAppDeploymentOnMachineGroup@0
  displayName: 'IIS Web App Deploy'
  inputs:
    WebSiteName: '$(Parameters.WebsiteName)'
    Package: '$(build.artifactStagingDirectory)/*.zip'
    RemoveAdditionalFilesFlag: true
    TakeAppOfflineFlag: true
    XmlVariableSubstitution: True

Build.ArtifactStagingDirectory :

Локальный путь на агенте, в который копируются любые артефакты перед отправкой в ​​место назначения. Например: c:\agent_work\1\a

System.DefaultWorkingDirectory:

Локальный путь к агенту, куда загружаются файлы исходного кода. Например: c:\agent_work\1\s

Для этого, пожалуйста, обратитесь к предопределенным переменным .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...