Comment faire en sorte que vos pipelines Azure DevOps respectent le fichier global.json ?

Voici une situation qui peut être embrassante si vous devez utiliser un fichier global.json avec Azure Pipeline : la tâche DotNetCoreCLI@2 n'utilise pas votre fichier global.json.

Ce problème se produit si le fichier global.json ne se trouve pas à la racine du repository.

Celui-ci a déjà été reporté sur GitHub [BUG]: DotNetCoreCLI@2 global.json lookup is hardcoded to repository root · Issue #21523 · microsoft/azure-pipelines-tasks.

Malheureusement, cette issue date de décembre, et n'a toujours pas été résolue.

Il existe cependant une solution de contournement qui n'est pas documentée. Elle consiste à utiliser la propriété workingDirectory de la tâche DotNetCoreCLI@2. En affectant à celle-ci le dossier dans lequel se trouve le fichier global.json, on résout le problème.

Exemple :


- task: DotNetCoreCLI@2
  displayName: 'Compilation'
  inputs:
    command: build
    projects: $(solution)
    workingDirectory: '$(Build.SourcesDirectory)\Sources\'


Jérémy Jeanson

Comments

You have to be logged in to comment this post.