J'ai une application .NET C # et je souhaite télécharger les derniers artefacts générés par la dernière version de ce projet Azure DevOps public:

https://dev.azure.com/LumiaWoA/Boot%20Shim/_build?definitionId=3

Je suis désolé car je ne connais aucun code fonctionnel. Le problème est exactement cela. Comment s'interfacer avec Azure DevOps pour effectuer une telle tâche?

J'ai en tête d'utiliser un HttpClient pour télécharger les artefacts compressés en utilisant une URL spéciale, mais rien ne vient à l'esprit.

15
SuperJMN 27 janv. 2019 à 20:52

3 réponses

Meilleure réponse

Vous devrez utiliser Azure DevOps REST Api pour cela. Cet appel de repos récupère les artefacts de la construction:

GET https://dev.azure.com/{organization}/{project}/_apis/build/builds/{buildId}/artifacts?artifactName={artifactName}&api-version=5.0

Cet appel REST vous donnerait la dernière version:

GET https://dev.azure.com/{organization}/{project}/_apis/build/latest/{definition}?branchName={branchName}&api-version=5.0-preview.1

Voici un article (avec quelques exemples) expliquant comment vous vous authentifieriez auprès de l'API. Du point de vue du code, c'est une simple requête HTTP, donc cela devrait être assez facile.

10
Johannes Schweer 6 déc. 2019 à 11:26

Dans le Pipelines, quand on sélectionne une exécution réussie et explore jusqu'à Agent job X et sélectionne cet agent, il peut être trouvé dans les informations du journal de cet agent.

Dans l'agent Job Information, on peut obtenir un lien vers l'emplacement de téléchargement où les éléments peuvent être téléchargés grâce au lien X artifact produced:

enter image description here

15
ΩmegaMan 9 oct. 2019 à 16:39

Versions> Sélectionnez une version

enter image description here

Cliquez sur le lien Artéfact (en bleu par exemple: 20191125.1)

Le nouvel écran est le journal. En haut à droite, cliquez sur le bouton bleu [Artéfacts].

Choisissez Drop, développez l'arborescence et faites un clic droit pour télécharger le fichier souhaité (probablement le zip de la construction)

2
Neil Thompson 3 déc. 2019 à 12:21