web-dev-qa-db-fra.com

Utilisez de nouveaux travaux de déploiement à Azure Devops. Impossible de trouver des artefacts

J'ai besoin de déployer une application ASP.NET CORE à Azure WebApp à l'aide d'Azure Devops.

J'ai le fichier YAML Azure-Pipelines Azure-Pipelines suivant:

trigger:
- master

variables:
  buildConfiguration: 'Release'
  buildPlatform: 'any cpu'
  version: '0.2.0'

stages:

- stage: 'Stage1'

  jobs:

  # Previous Jobs like Build, Test, ...

  - job: 'Publish'
    pool:
      vmImage: 'Ubuntu-16.04'
    dependsOn: 'Test'
    steps:

    - task: DotNetCoreCLI@2
      displayName: 'Publish'
      inputs:
        command: publish
        publishWebProjects: false
        projects: '**/*.csproj'
        arguments: '--configuration $(BuildConfiguration) --output $(build.artifactstagingdirectory)'
        zipAfterPublish: true

    - task: PublishBuildArtifacts@1
      displayName: 'Artifact'
      inputs:
        PathtoPublish: '$(build.artifactstagingdirectory)'

    - task: AzureRmWebAppDeployment@4
        displayName: 'Deploy'
        inputs:
          package: '$(build.artifactstagingdirectory)/App.Api.Zip'
          azureSubscription: 'MyName.Azure'
          appType: 'Web App On Windows'
          webAppName: 'myname-api'

Cela fonctionne bien, mais j'aimerais utiliser le nouveau travail de déploiement .

J'ai supprimé la tâche "Déployer" et l'a ajouté comme un nouvel emploi de déploiement après le travail "Publier":

  - deployment: DeployJob
    dependsOn: 'Publish'
    pool:
      vmImage: Ubuntu-16.04
    environment: production
    strategy:
      runOnce:
        deploy:
          steps:
          - task: AzureRmWebAppDeployment@4
            inputs:
              package: '$(build.artifactstagingdirectory)/App.Api.Zip'
              azureSubscription: 'MyName.Azure'
              appType: 'Web App On Windows'
              webAppName: 'myname-api'

Vous pouvez voir que le 'Azurermwebappdeployment @ 4' est le même qu'auparavant.

Mais maintenant, je reçois l'erreur suivante lorsque j'exécute le pipeline:

Download artifact to: /home/vsts/work/1/
Could not find any pipeline artifacts in the build.  

Qu'est-ce que je rate? Comment régler ceci?

7
Miguel Moura

Essayez d'utiliser $ (pipeline.workspace) à la place.
[.____] Vous devriez aussi faire ce que @wenbo a écrit dans sa réponse, mais je pense que ce n'est pas nécessaire, la partie importante ici est $ (pipeline.workspace):

Par défaut, les fichiers sont téléchargés sur $ (pipeline.workspace)/{artifact}, où l'artefact est le nom de l'artefact. La structure de dossiers de l'artefact est toujours préservée.

source

0
Ron