Как поделиться файлом между двумя сборками одного и того же конвейера в Azure Devops?

Недавно я начал использовать Azure DevOps и хочу где-нибудь сохранить файл .json, сгенерированный во время одной запланированной на ночь сборки, чтобы при следующем запуске запланированной на ночь сборки для того же конвейера я мог использовать этот сохраненный файл json. в этом текущем запуске сборки. Я пытался выполнить задачу «Публикация и загрузка конвейерных артефактов», но она просит меня указать конкретную сборку, откуда должны быть загружены артефакты, что в моем случае невозможно указать, поскольку существует несколько отдельных сборок CI, которые происходят в течение дня между этими ночными сборками. плановая сборка.


20
1

Ответ:

Решено

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

  1. В конце запланированной на ночь сборки пометьте ее как «ночную», например. с задачей powershell, вызывающей build.addbuildtag
  2. Следующая ночная сборка может идентифицировать предыдущую по этому тегу и необходимому ей скачать артефакт:
    - task: DownloadPipelineArtifact@2
      inputs:
        source: 'specific'
        project: 'FabrikamFiber'
        pipeline: 12
        runVersion: 'latest'
        tags: 'nightly'