Oprogramowanie agenta w wersji 3
Zespół potoków uaktualnia oprogramowanie agenta z wersji 2.x (przy użyciu platformy .NET Core 3.1) do wersji 3.x (przy użyciu platformy .NET 6). Nowa wersja agenta obsługuje nowy sprzęt krzemowy firmy Apple i nowsze systemy operacyjne, takie jak Ubuntu 22.04 lub Windows w arm64.
Uwaga
Ta funkcja jest dostępna od wersji 2022.1 usługi Azure DevOps Server.
Uaktualnianie do agenta 3.x w obsługiwanych systemach operacyjnych
Jeśli używasz własnych agentów w nowszych systemach operacyjnych obsługiwanych przez platformę .NET 6, uaktualnienie do nowej wersji agenta jest automatyczne.
Następujące systemy operacyjne są obsługiwane przez agenta 3.x.
-
Linux
- x64
- Debian 10+
- Fedora 36+
- openSUSE 15+
- Red Hat Enterprise Linux 7+
- Nie wymaga już oddzielnego pakietu
- SUSE Enterprise Linux 12 z dodatkiem SP2 lub nowszym
- Ubuntu 22.04, 20.04, 18.04, 16.04
- Azure Linux 2.0
- Oracle Linux 7 i nowsze
- ARM64
- Debian 10+
- Ubuntu 22.04, 20.04, 18.04
- Alpine x64
- Alpine Linux 3.13 lub nowszy (wymaga agenta 3.227 lub nowszego)
- x64
-
macOS
- x64
- macOS 10.15 "Catalina"
- macOS 11.0 "Big Sur"
- macOS 12.0 "Monterey"
- macOS 13.0 "Ventura"
- macOS 14.0 "Sonoma"
- ARM64
- macOS 11.0 "Big Sur"
- macOS 12.0 "Monterey"
- macOS 13.0 "Ventura"
- macOS 14.0 "Sonoma"
- x64
-
Windows
- System operacyjny klienta
- Windows 7 z dodatkiem SP1 ESU
- Windows 8.1
- Windows 10
- Windows 11
- System operacyjny serwera
- Windows Server 2012 lub nowszy
- System operacyjny klienta
Uaktualnianie do agenta 3.x w nieobsługiwanych systemach operacyjnych
Jeśli używasz własnych agentów w systemie operacyjnym, który nie jest obsługiwany przez platformę .NET 6, musisz zaktualizować maszyny, aby korzystały z nowszego obsługiwanego systemu operacyjnego obsługiwanego przez platformę .NET 6.
Poniższa lista systemów operacyjnych jest często używana dla własnych agentów 2.x. Te systemy operacyjne nie są obsługiwane przez platformę .NET 6 i nie można ich używać do uruchamiania nowego agenta opartego na platformie .NET 6 w wersji 3.x.
System/dystrybucja | Wersja nieobsługiwana przez platformę .NET 6 |
---|---|
Debian | <= 4,9 |
Fedora | <= 32 |
RedHat Enterprise Linux | <= 6 |
Ubuntu | < 18.04 LTS |
macOS | < 10.15 |
Możesz użyć skryptu, aby ustalić, czy agenci we własnych pulach mogą zostać uaktualnieni z wersji 2.x do 3.x.
Podczas próby uruchomienia potoków na agencie w wersji 2.218 (lub 2.214 w systemie RHEL 6) potoki uruchomione w jednym z nieobsługiwanych systemów operacyjnych wymienionych tutaj zakończy się niepowodzeniem z następującym komunikatem o błędzie: 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.
Aby rozwiązać ten błąd, możesz wykonać następujące czynności:
- Uaktualnij lub przenieś maszyny agentów do jednego z obsługiwanych systemów operacyjnych wymienionych wcześniej w tym artykule. Jest to preferowane rozwiązanie i umożliwia uzyskanie przyszłych aktualizacji agenta,
- Ustaw zmienną
AGENT_ACKNOWLEDGE_NO_UPDATES
na agencie, ustawiając zmienną środowiskową lub zmienną potoku.
Można ustawić
AGENT_ACKNOWLEDGE_NO_UPDATES
, konfigurując zmienną środowiskową na agencie, na przykład w /etc/environment lub etc/profile.d:AGENT_ACKNOWLEDGE_NO_UPDATES=true
.Można ustawić zmienną potoku.
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
Często zadawane pytania
Jaka jest różnica między agentami 2.x i 3.x?
Agenci 2.x (na przykład 2.212) to .NET Core 3.1, a agenci 3.x (na przykład 3.212) to .NET 6. W fazie I i II obie wersje są dostępne, a wersje 3.x są w wersji wstępnej.
Jak mogę sprawdzić agentów, aby sprawdzić, czy mogą przeprowadzić uaktualnienie do wersji 3.x?
Możesz użyć skryptu, aby przewidzieć, czy agenci w pulach własnych będą mogli uaktualnić z wersji 2.x do 3.x.
W jaki sposób problemy z zabezpieczeniami agenta będą poprawiane w przyszłości?
Gdy agent platformy .NET 6 stanie się ogólnie dostępny dla pul hostowanych samodzielnie w kwartale 2023 r., w przypadku agentów 2.x nie będą wykonywane poprawki. Poprawki będą wykonywane tylko dla agentów 3.x. Mamy jednak również klientów usługi Azure DevOps Server, którzy nadal będą polegać na agentach 2.x. W związku z tym przejrzymy problemy z zabezpieczeniami na podstawie przypadków, aby zdecydować.
Co należy zrobić, gdy jestem w nieobsługiwanym systemie operacyjnym?
Teraz należy przeprowadzić migrację do nowszego systemu operacyjnego obsługiwanego przez platformę .NET 6. W przeciwnym razie agent może podjąć próbę uaktualnienia i zakończy się niepowodzeniem, ponieważ nie można zainstalować platformy .NET 6 w systemie operacyjnym. Opublikujemy pewne wskazówki we wpisie w blogu, który uniemożliwi automatyczne uaktualnianie agenta. Jednak jest to tylko tymczasowe rozwiązanie, aby dać trochę czasu na uaktualnienie maszyn agentów.
Czy mogę pozostać na agentach 2.x, jeśli nie pracuję już nad żadnymi zmianami w moim projekcie?
L.p. Zespół potoków regularnie dodaje nowe funkcje do usługi Azure Pipelines, a niektóre z nich mogą wymagać aktualizacji agenta, mimo że potok nie zależy jawnie od tej funkcji. Jeśli nie można zapobiec automatycznym uaktualnieniu agenta, korzystając ze wskazówek w blogu z kontynuacją, nie można użyć tego agenta do zaplanowana potoku. Jeśli nie można odnaleźć żadnego agenta z wymaganymi możliwościami, wykonanie potoku zakończy się niepowodzeniem.
Czy przed zainstalowaniem oprogramowania agenta 3.x należy zainstalować program .NET 6?
Przed zainstalowaniem i skonfigurowaniem oprogramowania agenta 3.x nie trzeba instalować platformy .NET 6 na maszynie agenta. Wszystkie zależności platformy .NET wymagane przez agenta 3.x są częścią samego agenta.
Czy muszę skompilować kod przy użyciu platformy .NET 6, jeśli używam agenta 3.x?
Wersja platformy .NET używana do uruchamiania agenta 3.x jest samodzielna w instalacji agenta i nie jest używana do kompilowania kodu. Wersja platformy .NET używana do kompilowania kodu zależy od potoku oraz wersji lub wersji platformy .NET zainstalowanej na maszynie agenta.
Używam usługi Azure DevOps Server, a nie usługi Azure DevOps Services. Czy ta zmiana ma wpływ na mnie?
Tak, jeśli używasz dowolnej z wersji usługi Azure DevOps Server wymienionych w poniższej sekcji.
Zespół potoków zaleca zaktualizowanie maszyn agentów do nowszych systemów operacyjnych obsługiwanych przez platformę .NET 6, począwszy od teraz, jeśli planujesz nadążyć za wydaniami usługi Azure DevOps Server w przyszłości.
Czy usługa Azure DevOps Server obsługuje agenta 3.x
Wersje usługi Azure DevOps Server obsługują wersję agenta wdrożonego w tej wersji. W poniższej tabeli wymieniono każdą obsługiwaną wersję serwera Azure DevOps Server i obsługiwaną wersję agenta.
Wersja usługi Azure DevOps Server | Wersja agenta |
---|---|
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 |
Usługa Azure DevOps Server jest obsługiwana za pośrednictwem poprawek zabezpieczeń lub obsługi, które zapewniają ukierunkowane zbiorcze poprawki błędów dla istniejących funkcji w produkcie. Aby uzyskać najlepsze i najbezpieczniejsze środowisko produktu, zdecydowanie zachęcamy i zalecamy, aby wszyscy klienci korzystali z najnowszej, najbezpieczniejszej wersji usługi Azure DevOps Server. Najnowszą wersję produktu można pobrać ze strony pobierania usługi Azure DevOps Server.
Po zainstalowaniu aktualizacji lub nowej wersji usługi Azure DevOps Server zaktualizuj agentów.
W poniższej tabeli wymieniono wersje serwera Azure DevOps Server, które po raz pierwszy zawierały wersję agenta 3.x.
- Azure DevOps Server 2022 Update 2
- Azure DevOps Server 2022 Update 1
- Azure DevOps Server 2022 Update 0.1 Patch 4 i nowsze
- Azure DevOps Server 2020 Update 1.2 Patch 9 i nowsze
- Azure DevOps Server 2020 Update 0.2 Patch 4 i nowsze
- Azure DevOps Server 2019 Update 1.2 Patch 5 i nowsze
- Azure DevOps Server 2019 — poprawka 15 lub nowsza
Jaka jest oś czasu wdrożenia agenta w wersji 3?
Agent w wersji 3 został wydany w marcu 2023 r.
Co się stanie, gdy zadanie wymaga zaktualizowania agenta do agenta w wersji 3?
Zwykle, gdy zadanie wymaga nowszej wersji agenta, automatycznie zaktualizuje się. Na razie, podczas gdy agent w wersji 2 jest nadal aktualizowany, wyłączyliśmy automatyczną aktualizację z agenta w wersji 2 do agenta w wersji 3. Po włączeniu tej opcji w przypadku systemów operacyjnych, które nie są zgodne z agentem w wersji 3, agent w wersji 2.217 i nowszej nie podejmie próby zaktualizowania się do agenta w wersji 3. Zamiast tego zostanie wyświetlone ostrzeżenie informujące użytkowników, że muszą najpierw uaktualnić system operacyjny: 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