Можете ли вы перечислить, просмотреть или загрузить содержимое артефакта AzureDevOps через веб-интерфейс?

В веб-интерфейсе AzureDevOps, если я смотрю каналы для артефактов, я вижу списки команд для загрузки артефактов через лазурный клик, например

az artifacts universal download blah blah blah

Но нет возможности перечислить файлы или загрузить их прямо из веб-интерфейса. Это кажется удивительным упущением.

Is it:

  • А) где-то неправильная конфигурация?
  • Б) отсутствующая функция в пользовательском интерфейсе?

or

В случае необходимости, артефакты создаются из конвейера Azure с помощью задачи UniversalPackages для публикации каталога, как показано ниже:

    - task: UniversalPackages@0
      displayName: 'PublishInstallationPackage'
      inputs:
        command: publish
        publishDirectory: 'pkg'
        versionOption: custom
        versionPublish: $(Build.BuildNumber)
        vstsFeedPublish: 'blah'
        vstsFeedPackagePublish: 'foobar'
        packagePublishDescription: 'It performs a quirkafleeg'
        publishPackageMetadata: true

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

Бонусные баллы, если вы можете предложить способ обнаружения и сбоя сборки, если она публикует пустой каталог (пока лучшее предложение - добавить задачу, которая проверяет, пуст ли каталог перед публикацией).


person Bruce Adams    schedule 11.03.2021    source источник


Ответы (2)


Я вижу, вы пытались загрузить универсальный пакет. К сожалению, загрузка универсального пакета через веб-интерфейс в настоящее время не поддерживается.

Вам нужно будет использовать команды az artifacts universal или задачу UniversalPackages для загрузки в конвейере. См. здесь.

Azure DevOps не поддерживает прямые ссылки для скачивания HTTP / HTTPS.

Есть голоса пользователей, которые были отправлены команде разработчиков Microsoft. Вы можете проголосовать за него или создать свой собственный. См. Ниже голоса пользователей:

Пункт контекстного меню загрузки не предусмотрен для универсального пакеты

Загрузить универсальный пакет через API

Однако Azure DevOps предоставляет возможность загрузки пакетов Artifacts типов NPM, Nuget, Maven и Python непосредственно из веб-интерфейса.

Что касается обнаружения пустого каталога. Лучше всего, как вы упомянули, добавить задачу сценария, чтобы проверить, пуст ли каталог перед публикацией.

Если вы хотите проверить содержимое пакета. Вы можете добавить Задача публикации артефактов конвейера, чтобы опубликовать пакет как артефакты сборки в конвейере публикации.

введите описание изображения здесь

Затем вы можете перейти к соответствующей сборке, чтобы проверить содержимое пакета в пользовательском интерфейсе канала артефактов. См. ниже:

введите описание изображения здесь

person Levi Lu-MSFT    schedule 12.03.2021
comment
Согласно этой ссылке задача "Опубликовать артефакты сборки" устарела. - person Bruce Adams; 12.03.2021
comment
@BruceAdams Вы можете использовать Задача публикации артефактов конвейера. - person Levi Lu-MSFT; 15.03.2021

Вы можете скачать свои артефакты Azure через веб-интерфейс.

  1. Перейдите к каналу пакета артефактов Azure
  2. Щелкните пакет, который хотите загрузить
  3. Нажмите Загрузить, который будет справа от «Подключиться к каналу» на верхней панели под названием пакета  Azure DevOps - Загрузить пакет

Пакет будет загружен локально через веб-интерфейс.

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

person Max Morrow    schedule 11.03.2021