Ошибка конвейера Azure DevOps: не найден агент с версией выше 2.220.0

Недавно я начал сталкиваться с ошибкой в ​​моем конвейере Azure DevOps, который ранее был построен без каких-либо проблем. Сообщение об ошибке следующее:

В пуле Default не найден агент, удовлетворяющий следующему требованию: Agent.Version. Все требования: Agent.Version -gtVersion 2.220.0

Наша версия агента сборки на данный момент — 2.170.1.

Я уверен, что в конфигурацию конвейера или проект не было внесено никаких изменений, которые могли бы вызвать эту проблему. Может ли это быть связано с недавним обновлением программного обеспечения на сервере сборки или с какими-либо изменениями в самом Azure DevOps?

Вот шаги, которые я предпринял для устранения проблемы:

Проверена версия агента в пуле по умолчанию — 2.170.1. Проверено наличие последних обновлений или изменений в конфигурации проекта и конвейера. Буду признателен за любые идеи и предложения по решению этой проблемы. Есть ли способ заставить конвейер использовать существующую версию агента или мне следует обновить агент до более новой версии? Если обновление агента является рекомендуемым подходом, каковы шаги для этого?

Вы также проверили pool в самом файле YAML?

Ikigai programmeh 18.07.2024 03:16

Можете ли вы предоставить подробный YAML-файл вашего конвейера, содержащий все задачи и версии задач, установленные в конвейере? В Azure Pipelines многие задачи предъявляют свои требования. Разные задачи или версии задач могут иметь разные требования. Когда вы добавляете эти задачи в задания конвейеров, необходимые требования автоматически устанавливаются на уровне заданий. Когда вы удаляете задачи, требования также удаляются автоматически.

Bright Ran-MSFT 18.07.2024 03:31

Встроенные задачи Azure Pipelines можно просмотреть в документации «Справочник по задачам Azure Pipelines». На этой странице вы можете открыть документацию любой встроенной задачи, чтобы просмотреть Demands из требований каждой задачи.

Bright Ran-MSFT 18.07.2024 03:35

В связи с вашей проблемой я рекомендую вам попытаться обновить все агенты в пуле до новой версии.

Bright Ran-MSFT 18.07.2024 03:36

для некоторых задач требуется версия агента выше 2.xxx, вы можете обновить агент до версии 3

Max CHien 18.07.2024 04:10

YAML-файл @BrightRan-MSFT содержит более 2374 символов.

Dinesh 18.07.2024 06:29

@MaxCHien, есть ли какой-нибудь способ определить задачи, для которых требуется версия выше 2.170.x?

Dinesh 18.07.2024 07:30

@Dinesh, Как упоминалось выше, для встроенных задач Azure Pipelines вы можете открыть документацию каждой задачи, чтобы проверить необходимые Demands из раздела «Требования». Перед задачами, предоставляемыми расширениями, проверьте README расширений, чтобы узнать, есть ли какие-либо инструкции для Demands задач. Рекомендуемый способ избежать этой проблемы — поддерживать актуальность агентов.

Bright Ran-MSFT 18.07.2024 07:49

@Dinesh, вы можете предоставить YAML задания, в котором сообщается об ошибке.

Bright Ran-MSFT 18.07.2024 07:52

Шаги @BrightRan-MSFT: ............ - задача: gitversion/execute@0 name: Выполнить входные данные: useConfigFile: $(DetectGitVersionConfig.GitVersionConfigExists) configFilePath: ${{parameters.configFilePath }} displayName : Выполните GitVersion, а затем я проверю раздел «Требования». Спасибо за ваш вклад. Ценить это.

Dinesh 18.07.2024 08:06

@Dinesh, пожалуйста, опубликуйте в своем вопросе отформатированный контент YAML, чтобы он был хорошо читаемым. А работа содержит только задачу gitversion/execute@0?

Bright Ran-MSFT 18.07.2024 08:14

Давайте продолжим обсуждение в чате.

Dinesh 18.07.2024 09:01

@BrightRan-MSFT Это единственная задача (gitversion/execute@0), определенная в gitversion.yml, и существует несколько сценариев PowerShell. Я просмотрел документ, который вы упомянули ранее, но не смог найти задачу, связанную с gitversion/execute@0.

Dinesh 18.07.2024 09:33
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
13
127
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как мы уже обсуждали в комментариях выше, рекомендуется обновить агенты в вашем пуле до последней версии.

  1. Вы можете открыть пул агентов и нажать кнопку «Обновить все агенты», чтобы обновить все агенты в пуле.

  2. Вы можете включить в пуле опцию «Разрешить агентам в этом пуле автоматически обновляться». Когда станет доступна новая версия агента, она автоматически обновит агент перед запуском заданий конвейера.


Кроме того, как уже упоминалось @Max CHien, Azure DevOps выпустила Агент версии 3.x. Мы рекомендуем вам рассмотреть возможность обновления локальных агентов до версии 3.x. Вам необходимо скачать установочный пакет Агента версии 3.х и установить его на свои машины. Если вам больше не нужны агенты версии 2.x, вы можете удалить их.


Обновлено:

Если вы используете Azure DevOps Server/TFS (локально), агент версии 3.x доступен начиная с Azure DevOps Server 2022.1. Младшие версии недоступны. См. «Агент версии 3.x»

Поскольку вы используете Azure DevOps Server 2020 с довольно старой версией обновления/исправления (Version Dev18.M170.8), версия агента 3.x недоступна. Вы можете загрузить последнюю версию агента 2.x из репозитория GitHub (v2.220.0).

Кроме того, согласно заявлению в «Примечаниях к выпуску Azure DevOps Server 2020», если вы обновитесь до последней версии обновления/исправления (Update 0.2 Patch 6) Azure DevOps Server 2020, вы сможете использовать агент версии 3.x.


РЕДАКТИРОВАТЬ_2:

фатально: не репозиторий git (или любой из родительских каталогов)

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

steps:
- checkout: self
  fetchDepth: 0  # Disable shallow clone.

Ошибка: не удалось найти исполняемый файл: «dotnet-gitversion». Убедитесь, что путь к файлу существует или файл можно найти в каталоге, указанном переменной среды PATH.

Перед задачей «Выполнение GitVersion» (gitversion/execute) необходимо запустить задачу «Настройка GitVersion» (gitversion/setup), иначе шаг «Выполнение» завершится с этой ошибкой. См. «Примеры использования задач GitVersion».

steps:
- checkout: self
  fetchDepth: 0

- task: gitversion/setup@1
  displayName: 'Install GitVersion'
  inputs:
    versionSpec: '5.x'
    preferLatestVersion: true

- task: gitversion/execute@1
  displayName: 'Generate Version'

Спасибо за подробное объяснение. На данный момент я не хочу обновлять существующий агент, поскольку некоторые другие конвейеры настроены на использование этого агента. Ничего, если я установлю новый агент на том же компьютере и настрою пул по умолчанию для использования нового агента?

Dinesh 18.07.2024 09:37

@Dinesh, Конечно, вы можете настроить несколько агентов с разными версиями агентов в одном пуле.

Bright Ran-MSFT 18.07.2024 10:01

Привет, Bright Ran-MSFT, я пытался создать новый агент, но загруженная версия агента VSTS — 2.170.1. Это версия Azure DevOps Server — версия Dev18.M170.8. Этот сервер поддерживает только версию 2.170.1? В этом случае могу ли я загрузить последнюю версию агента VSTS с сайта github.com/microsoft/azure-pipelines-agent/releases и установить ее? Это будет работать?

Dinesh 19.07.2024 03:56

@Dinesh, для Azure DevOps Server/TFS агент версии 3.x доступен начиная с Azure DevOps Server 2022.1. См. РЕДАКТИРОВАТЬ в моем ответе.

Bright Ran-MSFT 19.07.2024 04:29

Привет, Bright Ran-MSFT, я установил 2.220.0 и установил новый пул. Когда я запускаю сборку, я получаю эту ошибку. фатальный: не репозиторий git (или какой-либо из родительских каталогов): .git Команда: dotnet-gitversion C:/agent/vsts-agent/_work/1/s /output json /output buildserver /config C:\agent\vsts -agent_work\1\s\GitVersion.yml ##[ошибка]Ошибка: не удалось найти исполняемый файл: «dotnet-gitversion». Убедитесь, что путь к файлу существует или файл можно найти в каталоге, указанном переменной среды PATH. Также убедитесь, что файл имеет допустимое расширение для исполняемого файла.

Dinesh 22.07.2024 08:35

@Dinesh, я обновил свой ответ выше, добавив больше предложений. См. EDIT_2.

Bright Ran-MSFT 22.07.2024 09:16

Привет Брайт Ран-MSFT, спасибо за ваш ответ. У меня есть сомнения: в нашей предыдущей успешной сборке, когда я проверил журналы GitVersion, была выполнена команда Agent: Команда «Azure Pipelines»: dotnet-gitversion C:/agent/i1/_work/39/s /output json/ вывод buildserver /config C:\agent\i1_work\39\s\GitVersion.yml Но с неудачной сборкой после обновления агента. Команда: Агент: «Azure Pipelines». Команда: git rev-parse --is-shallow-repository. Есть какие-нибудь мысли по этому поводу?

Dinesh 23.07.2024 02:31

@Dinesh, это может быть связано с обновлением агента и самого расширения GitTool.

Bright Ran-MSFT 23.07.2024 08:33

Привет, Брайт Ран-MSFT, я обновил gitversion ymal, чтобы сначала настроить его перед выполнением задачи, и это сработало. Спасибо за вашу помощь, очень ценю.

Dinesh 23.07.2024 09:16

Привет, Брайт Ран-MSFT, после настройки агента. Я создал коммит с +semver:minor. Моя версия пакета была 2.1.0, и с коммитом я ожидал увеличить номер версии на 1, что означает 2.2.0, вместо этого пакет был обновлен до 2.1.1. Есть идеи?

Dinesh 24.07.2024 09:28

Другие вопросы по теме