Программное обеспечение агента версии 3
Команда конвейеров обновляет программное обеспечение агента с версии 2.x (с помощью .NET Core 3.1) до версии 3.x (с помощью .NET 6). Новая версия агента поддерживает новое оборудование Apple silicon и более новые операционные системы, такие как Ubuntu 22.04 или Windows в ARM64.
Примечание.
Эта функция доступна начиная с Azure DevOps Server 2022.1.
Обновление до агента 3.x в поддерживаемых операционных системах
Если вы запускаете локальные агенты в новых операционных системах , поддерживаемых .NET 6, обновление до новой версии агента выполняется автоматически.
Следующие операционные системы поддерживаются агентом 3.x.
-
Linux
- x64
- Debian 10+
- Fedora 36+
- openSUSE 15+
- Red Hat Enterprise Linux 7+
- Больше не требуется отдельный пакет
- SUSE Enterprise Linux 12 с пакетом обновления 2 (SP2) или более поздней версии
- Ubuntu 22.04, 20.04, 18.04, 16.04
- Azure Linux 2.0
- Oracle Linux 7 и более поздних версий
- ARM64
- Debian 10+
- Ubuntu 22.04, 20.04, 18.04
- Alpine x64
- Alpine Linux 3.13 и более поздней версии (требуется агент 3.227 или более поздней версии)
- x64
-
macOS
- x64
- macOS 10.15 "Catalina"
- macOS 11.0 "Big Sur"
- macOS 12.0 "Monterey"
- macOS 13.0 "Ventura"
- macOS 14.0 "Сонома"
- ARM64
- macOS 11.0 "Big Sur"
- macOS 12.0 "Monterey"
- macOS 13.0 "Ventura"
- macOS 14.0 "Сонома"
- x64
-
Windows
- Клиентская ОС
- Windows 7 с пакетом обновления 1 (SP1), ESU
- Windows 8.1
- Windows 10
- Windows 11
- ОС сервера
- на нем установлена Windows Server 2012 или более поздней версии;
- Клиентская ОС
Обновление до агента 3.x в неподдерживаемых операционных системах
Если вы выполняете локальные агенты в операционной системе, которая не поддерживается .NET 6, необходимо обновить компьютеры, чтобы использовать более новую поддерживаемую операционную систему , поддерживаемую .NET 6.
Следующий список операционных систем обычно используется для самостоятельно размещенных агентов 2.x. Эти операционные системы не поддерживаются .NET 6 и не могут использоваться для запуска нового агента на основе .NET 6 версии 3.x.
Система или распределение | Версия, не поддерживаемая .NET 6 |
---|---|
Debian | <= 4,9 |
Fedora | <= 32 |
RedHat Enterprise Linux | <= 6 |
Ubuntu | < 18.04 LTS |
macOS | < 10.15 |
Вы можете использовать скрипт для прогнозирования возможности обновления агентов в локальных пулах с версии 2.x до 3.x.
При попытке запустить конвейеры в агенте версии 2.218 (или 2.214 в RHEL 6), конвейеры, работающие на одном из неподдерживаемых операционных систем, перечисленных здесь, завершаются ошибкой со следующим сообщением об ошибке: This operating system will stop receiving updates of the Pipelines Agent in the future. To be able to continue to run pipelines please upgrade the operating system or set an environment variable or agent knob "AGENT_ACKNOWLEDGE_NO_UPDATES" to "true". See https://aka.ms/azdo-pipeline-agent-v2-eos for more information.
Чтобы устранить эту ошибку, можно:
- Обновите или переместите компьютеры агента на одну из поддерживаемых операционных систем, перечисленных ранее в этой статье. Это предпочтительное решение, что позволяет вам получать будущие обновления агента.
-
AGENT_ACKNOWLEDGE_NO_UPDATES
Задайте переменную агента, задав переменную среды или переменную конвейера.
Можно задать
AGENT_ACKNOWLEDGE_NO_UPDATES
, настроив переменную среды в агенте, например в /etc/environment или etc/profile.d:AGENT_ACKNOWLEDGE_NO_UPDATES=true
.Можно задать переменную конвейера.
jobs: - job: 'agentWithVariables' displayName: 'Agent with variables' variables: AGENT_ACKNOWLEDGE_NO_UPDATES: 'true' # Required to not fail job on operating system that is not supported by .NET 6
Вопросы и ответы
Какова разница между агентами 2.x и 3.x?
Агенты 2.x (например, 2.212) — .NET Core 3.1, а агенты 3.x (например, 3.212) — .NET 6. Во время фаз I и II обе версии доступны, причем версии 3.x находятся в предварительном выпуске.
Как я могу проверить своих агентов, чтобы узнать, можно ли их обновить до версии 3.x?
Вы можете использовать скрипт для прогнозирования того, смогут ли агенты в ваших самостоятельных пулах обновляться с 2.x до 3.x.
Как будут исправляться проблемы безопасности в агенте в будущем?
Когда агент .NET 6 станет общедоступным для локально размещенных пулов в первом квартале 2023 года, исправления для агентов 2.x в целом делаться не будут. Исправления будут выполнены только для агентов 3.x. Однако у нас также есть клиенты Azure DevOps Server, которые по-прежнему будут полагаться на агенты 2.x. Таким образом, мы будем рассматривать вопросы безопасности в индивидуальном порядке, чтобы принять решение.
Что делать, когда я на неподдерживаемой ОС?
Теперь следует перейти на более новую операционную систему, поддерживаемую .NET 6. В противном случае ваш агент может попытаться произвести обновление, но это завершится сбоем, так как .NET 6 не удается установить на вашей ОС. Мы опубликуем рекомендации в следующей записи блога, чтобы предотвратить автоматическое обновление агента. Однако это только временное решение, чтобы предоставить вам еще некоторое время для обновления компьютеров агентов.
Могу ли я остаться на агентах 2.x, если я больше не работаю над изменениями в моем проекте?
№ Команда конвейеров регулярно добавляет новые функции в Azure Pipelines, и для некоторых из них может потребоваться обновление агента, даже если конвейер не зависит от этой функции. При предотвращении автоматического обновления агента с помощью инструкций в блоге по дальнейшим действиям этот агент не может использоваться для планирования конвейера. Если агент с необходимыми возможностями не найден, выполнение конвейера завершится ошибкой.
Необходимо ли установить .NET 6 перед установкой программного обеспечения агента 3.x?
Перед установкой и настройкой программного обеспечения агента 3.x не нужно устанавливать .NET 6 на компьютере агента. Все зависимости .NET, необходимые агенту 3.x, являются частью самого агента.
Нужно ли создавать код с помощью .NET 6, если я использую агент 3.x?
Версия .NET, используемая для запуска агента 3.x, является автономной в установке агента и не используется для сборки кода. Версия .NET, используемая для сборки кода, зависит от конвейера и версии или версий .NET, установленных на компьютере агента.
Я использую Azure DevOps Server, а не Azure DevOps Services. Повлияет ли это изменение на мою работу?
Да, если вы используете любую из версий Azure DevOps Server, перечисленных в следующем разделе.
Группа разработки конвейеров рекомендует обновить машины агентов до новых операционных систем, которые поддерживаются .NET 6, начиная с настоящего времени, если вы планируете продолжать использовать последние версии Azure DevOps Server в будущем.
Поддерживает ли Azure DevOps Server агент 3.x
Версии Azure DevOps Server поддерживают версию агента, развернутого с этой версией. В следующей таблице перечислены все поддерживаемые версии Azure DevOps Server и ее поддерживаемая версия агента.
Версия Azure DevOps Server | Версия агента |
---|---|
Azure DevOps Server 2022.2 | 3.238.0 |
Azure DevOps Server 2020.1.2 | 3.225.0 |
Azure DevOps Server 2019.1.2 | 3.225.0 |
Azure DevOps Server поддерживается через патчи безопасности или обслуживания, которые предоставляют целевые накопительные исправления ошибок для существующих функций продукта. Для лучшего и безопасного продукта мы настоятельно рекомендуем всем клиентам использовать последний, самый безопасный выпуск Azure DevOps Server. Последнюю версию продукта можно скачать на странице скачивания Azure DevOps Server.
После установки обновления Azure DevOps Server или новой версии обновите агенты.
В следующей таблице перечислены версии Azure DevOps Server, которые впервые включают агента версии 3.x.
- Azure DevOps Server 2022 обновление 2
- Azure DevOps Server 2022 Обновление 1
- Azure DevOps Server 2022 Update 0.1 Патч 4 и более поздние
- Azure DevOps Server 2020, обновление 1.2, исправление 9 и более поздние версии
- Azure DevOps Server 2020 с обновлением 0.2 патч 4 и более поздние версии
- Azure DevOps Server 2019 с обновлением 1.2, патч 5 и более поздних версий
- Azure DevOps Server 2019 — патч 15 и позже
Какова временная шкала развертывания агента версии 3?
Агент версии 3 выпущен в марте 2023 г.
Что произойдет, когда задача требует обновления агента до версии 3?
Как правило, если для задачи требуется более новая версия агента, она автоматически обновляется. Пока агент версии 2 продолжает обновляться, мы отключили автоматическое обновление от агента версии 2 до агента версии 3. После включения, операционные системы, несовместимые с агентом версии 3, агенты версии 2.217 и более поздние не будут пытаться обновить себя до агента версии 3. Вместо этого появится предупреждение, информирующее пользователей о необходимости обновления операционной системы в первую очередь: The operating system the agent is running on is <OS>, which will not be supported by the .NET 6 based v3 agent. Please upgrade the operating system of this host to ensure compatibility with the v3 agent. See https://aka.ms/azdo-pipeline-agent-version