Freigeben über


Versionshinweise zu Azure DevOps Server 2019 Update 1

| Entwicklercommunity Systemanforderungen | Lizenzbedingungen | DevOps Blog | SHA-1 Hashes

In diesem Artikel finden Sie Informationen zur neuesten Version für Azure DevOps Server.

Weitere Informationen zum Installieren oder Aktualisieren einer Azure DevOps Server-Bereitstellung finden Sie unter Azure DevOps Server Requirements. Um Azure DevOps-Produkte herunterzuladen, besuchen Sie die Seite "Azure DevOps Server-Downloads".

Direktes Upgrade auf Azure DevOps Server 2020 wird von Azure DevOps Server 2019 oder Team Foundation Server 2015 oder höher unterstützt. Wenn Sich Ihre TFS-Bereitstellung auf TFS 2010 oder einer früheren Version befindet, müssen Sie vor dem Upgrade auf Azure DevOps Server 2019 einige Zwischenschritte ausführen. Weitere Informationen finden Sie unter Installieren und Konfigurieren von Azure DevOps lokal.


Tresor ly Upgrade von Azure DevOps Server 2019 auf Azure DevOps Server 2020

Azure DevOps Server 2020 führt ein neues Aufbewahrungsmodell für die Pipelineausführung (Build) ein, das basierend auf den Einstellungen auf Projektebene funktioniert.

Azure DevOps Server 2020 behandelt die Buildaufbewahrung anders, basierend auf Aufbewahrungsrichtlinien auf Pipelineebene. Bestimmte Richtlinienkonfigurationen führen dazu, dass die Pipeline nach dem Upgrade gelöscht wird. Pipelineausführungen, die manuell aufbewahrt oder von einer Version aufbewahrt wurden, werden nach dem Upgrade nicht gelöscht.

Weitere Informationen zum sicheren Upgrade von Azure DevOps Server 2019 auf Azure DevOps Server 2020 finden Sie in unserem Blogbeitrag .

Azure DevOps Server 2019 Update 1.2 Patch 9 Veröffentlichungsdatum: 28. Mai 2024

Datei SHA-256 Hash
devops2019.1.2patch9.exe 4A3F41BBE00174DE9646678766EBF7F4D292526CBC1D885180B5D994B4D81

Wir haben Patch 9 für Azure DevOps Server 2019 Update 1.2 veröffentlicht, das Folgendes umfasst:

  • Optimieren Sie die Bereitstellung von Agent- und Aufgabenupdates aus früheren Patches (Patch 5 und 6).

Hinweis

Es ist nicht erforderlich, die Schritte in Patches 5 und 6 auszuführen; diese können übersprungen werden, und dieser Patch kann stattdessen angewendet werden.

Patches installieren

Wichtig

 Dieser Patch aktualisiert den verfügbaren Pipeline-Agent, die neue Version des Agents nach der Installation von Patch 9 lautet 3.225.0.

Pipelineanforderungen

Um das neue Verhalten zum Überprüfen von Befehlszeilenargumenten anzuwenden, muss eine Variable AZP_75787_ENABLE_NEW_LOGIC = true in Pipelines festgelegt werden, die die betroffenen Aufgaben verwenden. Weitere Informationen zum aktivierten Verhalten finden Sie hier :

  • Im klassischen Modus:

    Definieren Sie die Variable auf der Variablenregisterkarte in der Pipeline.

  • YAML-Beispiel:

variables: 
- name: AZP_75787_ENABLE_NEW_LOGIC 
  value: true 

Azure DevOps Server 2019 Update 1.2 Patch 8 Veröffentlichungsdatum: 12. März 2024

Datei SHA-256 Hash
devops2019.1.2patch8.exe 67E78EA7D67A09A6EE06309614F92E6D8495DEF52FF442E4E7C7979244FAD20A

Wir haben Patch 8 für Azure DevOps Server 2019 Update 1.2 veröffentlicht, das Korrekturen für Folgendes enthält:

  • Ein Problem wurde behoben, bei dem der Proxyserver nach der Installation von Patch 7 nicht mehr funktionierte.

Azure DevOps Server 2019 Update 1.2 Patch 7 Veröffentlichungsdatum: 13. Februar 2024

Datei SHA-256 Hash
devops2019.1.2patch7.exe 8C67C72A83C9215302BDEFB752A7C4E3F876D4D17FCFA63A02B955FCFB545AA

Wir haben Patch 7 für Azure DevOps Server 2019 Update 1.2 veröffentlicht, das Korrekturen für Folgendes enthält:

  • Ein Fehler wurde behoben, bei dem der vom Proxycacheordner verwendete Speicherplatz falsch berechnet wurde und der Ordner nicht ordnungsgemäß sauber wurde.
  • CVE-2024-20667: Sicherheitsanfälligkeit in Azure DevOps Server bezüglich Remotecodeausführung.

Azure DevOps Server 2019 Update 1.2 Patch 6 Veröffentlichungsdatum: 14. November 2023

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • Erweiterte Liste der zulässigen PowerShell-Aufgaben für die Parameterüberprüfung von Argumenten zum Aktivieren von Shellaufgabenargumenten.

Hinweis

Um Korrekturen für diesen Patch zu implementieren, müssen Sie eine Reihe von Schritten ausführen, um Aufgaben manuell zu aktualisieren.

Patches installieren

Wichtig

Wir haben Updates für den Azure Pipelines-Agent mit Patch 5 veröffentlicht, der am 12. September 2023 veröffentlicht wurde. Wenn Sie die Agentupdates nicht installiert haben, wie in den Versionshinweisen für Patch 5 beschrieben, empfehlen wir, diese Updates vor der Installation von Patch 6 zu installieren. Die neue Version des Agents nach der Installation von Patch 5 ist 3.225.0.

Konfigurieren von TFX

  1. Führen Sie die Schritte in der Dokumentation zum Hochladen von Aufgaben in Projektsammlungen aus, um die Installation und Anmeldung mit TFX-CLI durchzuführen.

Aktualisieren von Aufgaben mithilfe von TFX

Datei SHA-256 Hash
Tasks20231103.zip 389BA66EEBC3262FB83402E21373CE20AE040F70461B9F9AF9EFCED5034D2E5
  1. Laden Sie Tasks20231103.zip herunter, und extrahieren Sie sie.
  2. Ändern Sie das Verzeichnis in die extrahierten Dateien.
  3. Führen Sie die folgenden Befehle aus, um die Aufgaben hochzuladen:
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.230.0.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.230.0.zip 
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip 
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip 
tfx build tasks upload --task-zip-path PowerShellV2.2.230.0.zip 
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.230.0.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.230.0.zip 

Pipelineanforderungen

Um das neue Verhalten zu verwenden, muss eine AZP_75787_ENABLE_NEW_LOGIC = true-Variable in Pipelines festgelegt werden, die die betroffenen Aufgaben verwenden.

  • Im klassischen Modus:

    Definieren Sie die Variable auf der Variablenregisterkarte in der Pipeline.

  • YAML-Beispiel:

variables: 
- name: AZP_75787_ENABLE_NEW_LOGIC 
  value: true 

Azure DevOps Server 2019 Update 1.2 Patch 5 Veröffentlichungsdatum: 12. September 2023

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • CVE-2023-33136; Sicherheitsrisiko bei der Azure DevOps Server-Remotecodeausführung.
  • CVE-2023-38155: Sicherheitsanfälligkeit in Azure DevOps Server und Team Foundation Server zur Erhöhung von Berechtigungen.

Wichtig

Stellen Sie den Patch in einer Testumgebung bereit, und stellen Sie sicher, dass die Pipelines der Umgebung wie erwartet funktionieren, bevor Sie den Fix auf die Produktion anwenden.

Hinweis

Um Korrekturen für diesen Patch zu implementieren, müssen Sie eine Reihe von Schritten ausführen, um den Agent und die Aufgaben manuell zu aktualisieren.

Patches installieren

  1. Laden Sie Azure DevOps Server 2019 Update 1.2 Patch 5 herunter, und installieren Sie es.

Aktualisieren des Azure Pipelines-Agents

  1. Laden Sie den Agent hier herunter: https://github.com/microsoft/azure-pipelines-agent/releases/tag/v3.225.0 – Agent_20230825.zip
  2. Führen Sie die in der Dokumentation zu selbst gehosteten Windows-Agents beschriebenen Schritte aus, um den Agent bereitzustellen.  

Hinweis

AZP_AGENT_DOWNGRADE_DISABLED muss auf „true“ festgelegt werden, um zu verhindern, dass der Agent herabgestuft wird. Unter Windows kann der folgende Befehl in einer Administrator-Eingabeaufforderung verwendet werden, gefolgt von einem Neustart. setx AZP_AGENT_DOWNGRADE_DISABLED true /M

Konfigurieren von TFX

  1. Führen Sie die Schritte in der Dokumentation zum Hochladen von Aufgaben in Projektsammlungen aus, um die Installation und Anmeldung mit TFX-CLI durchzuführen.

Aktualisieren von Aufgaben mithilfe von TFX

  1. Download and extract Tasks_20230825.zip.
  2. Ändern Sie das Verzeichnis in die extrahierten Dateien.
  3. Führen Sie die folgenden Befehle aus, um die Aufgaben hochzuladen:
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.226.3.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.226.2.zip 
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.226.2.zip 
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip 
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip 
tfx build tasks upload --task-zip-path PowerShellV2.2.226.1.zip 
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.226.2.zip 
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.226.2.zip 

Pipelineanforderungen

Um das neue Verhalten zu verwenden, muss eine AZP_75787_ENABLE_NEW_LOGIC = true-Variable in Pipelines festgelegt werden, die die betroffenen Aufgaben verwenden.

  • Im klassischen Modus:

    Definieren Sie die Variable auf der Variablenregisterkarte in der Pipeline.

  • YAML-Beispiel:

variables: 
- name: AZP_75787_ENABLE_NEW_LOGIC 
  value: true 

Azure DevOps Server 2019 Update 1.2 Patch 4 Veröffentlichungsdatum: 8. August 2023

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • CVE-2023-36869: Sicherheitsanfälligkeit in Azure DevOps Server für Spoofing.
  • Aktualisieren Sie den SSH-Dienst, um SHA2-256 und SHA2-512 zu unterstützen. Wenn Sie SSH-Konfigurationsdateien hartcodiert haben, um RSA zu verwenden, sollten Sie auf SHA2 aktualisieren oder den Eintrag entfernen.
  • Es wurde ein Endlosschleifenfehler auf CronScheduleJobExtension behoben.

Azure DevOps Server 2019 Update 1.2 Patch 3 Veröffentlichungsdatum: 13. Juni 2023

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • Es wurde ein Fehler behoben, der beim Upgrade von 2018 oder früheren Pushpaketen problemete.

Azure DevOps Server 2019 Update 1.2 Patch 2 Veröffentlichungsdatum: 13. Dezember 2022

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • Fehler im "Account Parallelism Sync Analytics Job" wurden behoben.

Azure DevOps Server 2019 Update 1.2 Patch 1 Veröffentlichungsdatum: 12. Juli 2022

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.2 veröffentlicht, der Korrekturen für Folgendes enthält.

  • Bei Testausführungs-APIs war das zurückgegebene Fortsetzungstoken größer als der angegebene Wert "maxLastUpdatedDate".
  • Beim Bearbeiten einer klassischen Pipeline war die Aufbewahrungsregisterkarte leer, nachdem Änderungen auf einer anderen Registerkarte deaktiviert wurden Karte.

Azure DevOps Server 2019 Update 1.2 Veröffentlichungsdatum: 17. Mai 2022

Azure DevOps Server 2019 Update 1.2 ist ein Rollup von Fehlerbehebungen. Sie können Azure DevOps Server 2019 Update 1.2 oder ein Upgrade von Azure DevOps Server 2019 oder Team Foundation Server 2013 oder höher direkt installieren.

Hinweis

Das Datenmigrationstool ist ungefähr drei Wochen nach dieser Version für Azure DevOps Server 2019 Update 1.2 verfügbar. Die Liste der derzeit unterstützten Versionen für den Import finden Sie hier.

Diese Version enthält Korrekturen für Folgendes:

  • Widerrufen aller persönlichen Zugriffstoken, nachdem das Active Directory-Konto eines Benutzers deaktiviert wurde.

Azure DevOps Server 2019 Update 1.1 Patch 13 Veröffentlichungsdatum: 26. Januar 2022

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Korrekturen für Folgendes enthält.

  • E-Mail-Benachrichtigungen wurden nicht gesendet, wenn sie das @mention Steuerelement in einer Arbeitsaufgabe verwenden.
  • Die bevorzugte E-Mail-Adresse wurde im Benutzerprofil nicht aktualisiert. Dies führte dazu, dass E-Mails an die vorherige E-Mail-Adresse gesendet wurden.
  • Das Elasticsearch-Sicherheitsrisiko wurde behoben, indem die jndilookup-Klasse aus Log4j-Binärdateien entfernt wurde.

Installationsschritte

  1. Aktualisieren Sie den Server mit Patch 13.
  2. Überprüfen Sie den Registrierungswert unter HKLM:\Software\Elasticsearch\Version. Wenn der Registrierungswert nicht vorhanden ist, fügen Sie einen Zeichenfolgenwert hinzu, und legen Sie die Version auf 5.4.1 fest (Name = Version, Wert = 5.4.1).
  3. Führen Sie den Updatebefehl PS C:\Program Files\{TFS Version Folder}\Search\zip> .\Configure-TFSSearch.ps1 -Operation update wie in der Readme-Datei angegeben aus. Möglicherweise wird eine Warnung wie die folgende angezeigt: Es kann keine Verbindung mit dem Remoteserver hergestellt werden. Schließen Sie das Fenster nicht, da das Update so lange wiederholt wird, bis es abgeschlossen ist.

Hinweis

Wenn Azure DevOps Server und Elasticsearch auf verschiedenen Computern installiert sind, führen Sie die unten beschriebenen Schritte aus.

  1. Aktualisieren Sie den Server mit Patch 13.
  2. Überprüfen Sie den Registrierungswert unter HKLM:\Software\Elasticsearch\Version. Wenn der Registrierungswert nicht vorhanden ist, fügen Sie einen Zeichenfolgenwert hinzu, und legen Sie die Version auf 5.4.1 fest (Name = Version, Wert = 5.4.1).
  3. Kopieren Sie den Inhalt des Ordners „zip“ unter C:\Program Files\{TFS Version Folder}\Search\zip in den Remotedateiordner von Elasticsearch.
  4. Führen Sie Configure-TFSSearch.ps1 -Operation update auf dem Elasticsearch-Servercomputer aus.

SHA-256-Hash: DB762E391F9DF8E71E58D6FAA169CA44DFBE996AE6567B55F772CBA9E3DA2AB3

Azure DevOps Server 2019 Update 1.1 Patch 12 Veröffentlichungsdatum: 15. September 2021

Patch 12 für Azure DevOps Server 2019 Update 1.1 enthält Korrekturen für Folgendes.

  • Beheben des Arbeitsaufgabenmakros für Abfragen mit "Enthält Wörter". Zuvor haben Abfragen falsche Ergebnisse für Werte zurückgegeben, die einen Zeilenumbruch enthielten.
  • Lokalisierungsproblem für benutzerdefinierte Arbeitsaufgabenlayoutzustände.
  • Lokalisierungsproblem in der E-Mail-Benachrichtigungsvorlage.
  • Problem mit NOTSAMEAS-Regelauswertung, wenn mehrere NOTSAMEAS-Regeln für ein Feld definiert wurden.

Azure DevOps Server 2019 Update 1.1 Patch 11 Veröffentlichungsdatum: 14. September 2021

Patch 11 für Azure DevOps Server 2019 Update 1.1 enthält Korrekturen für Folgendes.

Azure DevOps Server 2019 Update 1.1 Patch 10 Veröffentlichungsdatum: 10. August 2021

Patch 10 für Azure DevOps Server 2019 Update 1.1 enthält Korrekturen für Folgendes.

  • Behebung eines Problems mit E-Mail-Zustellungsaufträgen für einige Arbeitsaufgabentypen.

Azure DevOps Server 2019 Update 1.1 Patch 9 Veröffentlichungsdatum: 15. Juni 2021

Patch 9 für Azure DevOps Server 2019 Update 1.1 enthält Fixes für Folgendes.

  • Behebung eines Problems mit dem Datenimport. Der Datenimport dauerte lange für Kunden mit vielen veralteten Testfällen. Dies war auf Verweise zurückzuführen, die die Größe der tbl_testCaseReferences Tabelle erhöht haben. Mit diesem Patch wurden Verweise auf veraltete Testfälle entfernt, um den Datenimportvorgang zu beschleunigen.

Azure DevOps Server 2019 Update 1.1 Patch 8 Veröffentlichungsdatum: 13. April 2021

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt.

Um Korrekturen für diesen Patch zu implementieren, müssen Sie die unten aufgeführten Schritte für die allgemeine Patchinstallation und AzureResourceGroupDeploymentV2-Aufgabeninstallationen ausführen.

Allgemeine Patchinstallation

Wenn Sie über Azure DevOps Server 2019 Update 1.1 verfügen, sollten Sie Azure DevOps Server 2019 Update 1.1 Patch 8 installieren.

Überprüfen der Installation

  • Option 1: Ausführen devops2019.1.1patch8.exe CheckInstall, devops2019.1.1patch8.exe ist die Datei, die aus dem obigen Link heruntergeladen wird. Die Ausgabe des Befehls gibt entweder an, dass der Patch installiert wurde oder nicht installiert ist.

  • Option 2: Überprüfen Sie die Version der folgenden Datei: [INSTALL_DIR]\Azure DevOps Server 2019\Application Tier\Web Services\bin\Microsoft.VisualStudio.Services.Feed.Server.dll. Azure DevOps Server 2019 ist standardmäßig installiert c:\Program Files\Azure DevOps Server 2019 . Nach der Installation von Azure DevOps Server 2019.1.1 Patch 8 ist die Version 17.153.31129.2.

AzureResourceGroupDeploymentV2-Aufgabeninstallation

Hinweis

Alle unten genannten Schritte müssen auf einem Windows-Computer ausgeführt werden.

Installieren

  1. Extrahieren Sie das AzureResourceGroupDeploymentV2.zip-Paket in einen neuen Ordner auf Ihrem Computer. Beispiel: D:\tasks\AzureResourceGroupDeploymentV2.

  2. Laden Sie Node.js 14.15.1 und npm (im Node.js Download enthalten) entsprechend dem Computer herunter, und installieren Sie es.

  3. Öffnen Sie eine Eingabeaufforderung im Administratormodus, und führen Sie den folgenden Befehl aus, um tfx-cli zu installieren.

npm install -g tfx-cli
  1. Erstellen Sie ein persönliches Zugriffstoken mit Vollzugriffsberechtigungen, und kopieren Sie es. Dieses persönliche Zugriffstoken wird beim Ausführen des Befehls tfx login verwendet.

  2. Führen Sie Folgendes in der Eingabeaufforderung aus. Wenn Sie dazu aufgefordert werden, geben Sie die Dienst-URL und das persönliche Zugriffstoken ein.

~$ tfx login
Copyright Microsoft Corporation

> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully

  1. Führen Sie den folgenden Befehl aus, um den Task auf den Server hochzuladen. Verwenden Sie den Pfad der extrahierten ZIP-Datei aus Schritt 1.
  ~$ tfx build tasks upload --task-path *<Path of the extracted package>*

Azure DevOps Server 2019 Update 1.1 Patch 7 Veröffentlichungsdatum: 12. Januar 2021

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • Testausführungsdetails zeigen keine Testschrittdetails für Testdaten an, die mithilfe der OpsHub-Migration migriert wurden.
  • Ausnahme beim Initialisierer für 'Microsoft.TeamFoundation.TestManagement.Server.TCMLogger'
  • Nicht beibehaltene Builds werden nach der Migration zu Azure DevOps Server 2020 sofort gelöscht.
  • Beheben der Datenanbieter-Ausnahme

Azure DevOps Server 2019 Update 1.1 Patch 6 Veröffentlichungsdatum: 8. Dezember 2020

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • CVE-2020-1325: Sicherheitsanfälligkeit in Azure DevOps Server für Spoofing
  • CVE-2020-17135: Sicherheitsanfälligkeit in Azure DevOps Server
  • CVE-2020-17145: Sicherheitsrisiko durch Spoofing in Azure DevOps Server und Team Foundation Services
  • Behebung eines Problems mit TFVC, das nicht alle Ergebnisse verarbeitet

Wichtig

Lesen Sie die unten aufgeführten vollständigen Anweisungen, bevor Sie diesen Patch installieren.

Allgemeine Patchinstallation

Wenn Sie Über Azure DevOps Server 2019 Update 1.1 verfügen, sollten Sie Azure DevOps Server 2019 Update 1.1 Patch 6 installieren.

Überprüfen der Installation

  • Option 1: Ausführen devops2019.1.1patch6.exe CheckInstall, devops2019.1.1patch6.exe ist die Datei, die aus dem obigen Link heruntergeladen wird. Die Ausgabe des Befehls gibt entweder an, dass der Patch installiert wurde oder nicht installiert ist.

  • Option 2: Überprüfen Sie die Version der folgenden Datei: [INSTALL_DIR]\Azure DevOps Server 2019\Application Tier\Web Services\bin\Microsoft.VisualStudio.Services.Feed.Server.dll. Azure DevOps Server 2019 ist standardmäßig installiert c:\Program Files\Azure DevOps Server 2019 . Nach der Installation von Azure DevOps Server 2019.1.1 Patch 6 lautet die Version 17.153.30723.5.

AzurePowerShellV4-Aufgabeninstallation

Hinweis

Alle unten genannten Schritte müssen auf einem Windows-Computer ausgeführt werden.

Voraussetzungen

  1. Installieren Sie das Azure PowerShell Az-Modul Azure Powershell auf Ihrem privaten Agent-Computer.

  2. Erstellen Sie eine Pipeline mit der AzurePowerShellV4-Aufgabe . In der Aufgabe wird nur ein Fehler beim Standardfehler angezeigt.

Installieren

  1. Extrahieren Sie das AzurePowerShellV4.zip-Paket in einen Ordner namens AzurePowerShellV4.

  2. Laden Sie die Node.js 14.15.1 und npm (im Node.js-Download enthalten) auf Ihren Computer herunter, und installieren Sie diese Komponenten.

  3. Öffnen Sie eine Eingabeaufforderung im Administratormodus, und führen Sie den folgenden Befehl aus, um tfx-cli zu installieren.

npm install -g tfx-cli
  1. Erstellen Sie ein persönliches Zugriffstoken mit Vollzugriffsberechtigungen, und kopieren Sie es. Dieses persönliche Zugriffstoken wird beim Ausführen des Befehls tfx login verwendet.

  2. Führen Sie Folgendes in der Eingabeaufforderung aus. Wenn Sie dazu aufgefordert werden, geben Sie die Dienst-URL und das persönliche Zugriffstoken ein.

~$ tfx login
Copyright Microsoft Corporation

> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully

  1. Führen Sie den folgenden Befehl aus, um den Task auf den Server hochzuladen. Der Pfad des extrahierten Pakets ist D:\tasks\AzurePowerShellv4.
  ~$ tfx build tasks upload --task-path *<Path of the extracted package>*

Azure DevOps Server 2019 Update 1.1 Patch 5 Veröffentlichungsdatum: 8. September 2020

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • DTS 1713492 – Unerwartetes Verhalten beim Hinzufügen von AD-Gruppen zu Sicherheitsberechtigungen.

Azure DevOps Server 2019 Update 1.1 Patch 4 Veröffentlichungsdatum: 14. Juli 2020

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • CVE-2020-1326: Sicherheitsrisiko bei websiteübergreifendem Skripting
  • Die Buildpipeline zeigt eine falsche Verbindung für nicht autorisierte Benutzer beim Auswählen einer anderen Git-Quelle an.
  • Behebung eines Fehlers beim Ändern der Vererbung in "Ein" oder "Aus" in der XAML-Builddefinition.

Azure DevOps Server 2019 Update 1.1 Patch 3 Veröffentlichungsdatum: 9. Juni 2020

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • CVE-2020-1327: Stellen Sie sicher, dass der Azure DevOps-Server Benutzereingaben sanitiert.

Azure DevOps Server 2019 Update 1.1 Patch 2 Veröffentlichungsdatum: 14. April 2020

Wir haben einen Patch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der Folgendes behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • SVN-Commits lösen keine Pipeline aus

  • Hinzufügen von Unterstützung für SHA2 in SSH in Azure DevOps

Azure DevOps Server 2019 Update 1.1 Patch 1 Veröffentlichungsdatum: 10. März 2020

Wir haben einen Sicherheitspatch für Azure DevOps Server 2019 Update 1.1 veröffentlicht, der die folgenden Fehler behebt. Weitere Informationen finden Sie im Blogbeitrag.


Azure DevOps Server 2019 Update 1.1 RTW-Veröffentlichungsdatum: 10. Dezember 2019

Azure DevOps Server 2019 Update 1.1 ist ein Rollup von Fehlerbehebungen und Sicherheitsupdates. Es enthält alle Fixes in den zuvor veröffentlichten Patches für Azure DevOps Server 2019 Update 1. Sie können Azure DevOps Server 2019 Update 1.1 oder ein Upgrade von Azure DevOps Server 2019 oder Team Foundation Server 2012 oder höher direkt installieren.

Hinweis

Das Datenmigrationstool ist ungefähr drei Wochen nach dieser Version für Azure DevOps Server 2019 Update 1.1 verfügbar. Die Liste der derzeit unterstützten Versionen für den Import finden Sie hier.

Diese Version enthält Korrekturen für folgende Fehler:

Azure Boards

  • Beim Erstellen einer neuen Arbeitsaufgabe aus dem Produktrückstand wird das Feld "Titel" nicht mit dem Standardwert in der Prozessvorlage initialisiert.
  • Langsamkeit und Timeouts bei Verwendung von Azure Boards.
  • Der Wert "Überarbeitet nach" ist für Arbeitsaufgabenlinks falsch.

Azure Pipelines

Azure Test Plans

  • Das Bearbeiten von Feldern in Testplänen ist langsam.
  • In einem Testfall werden beim Öffnen von Boards (im Gegensatz zu Testplänen) die Details des freigegebenen Schritts nicht geöffnet.

Allgemein

Verwaltung

  • Hohe Arbeitsspeicherauslastung.
  • Server mit Lastenausgleichskonfigurationen mussten ihren öffentlichen Ursprung explizit zum Registrierungseintrag "AllowedOrigins" hinzufügen.
  • Kunden, die in SQL Azure installieren, sehen das Dialogfeld "Testversion abschließen" nicht.
  • Die Installation von Erweiterungen gibt den Fehler "Fehlermeldung fehlender Beitrag (ms.vss-dashboards-web.widget-sdk-version-2)".
  • Beim Einrichten der Elastic Search gibt es einen Fehler: "Benutzer ist nicht autorisiert".
  • Indizierungs- und Abfragefehler in Elastic Search beim Upgrade von TFS 2018 Update 2 oder höher.
  • Der Schritt "Lager erstellen" schlägt beim Konfigurieren von Azure DevOps Server fehl.

Diese Version enthält das folgende Update:

  • Unterstützung für SQL Server 2019.

Azure DevOps Server 2019 Update 1 Patch 1 Veröffentlichungsdatum: 10. September 2019

Wir haben einen Sicherheitspatch für Azure DevOps Server 2019 Update 1 veröffentlicht, der den folgenden Fehler behebt. Weitere Informationen finden Sie im Blogbeitrag.

  • CVE-2019-1306: Sicherheitsrisiko durch Remotecodeausführung in Wiki

Azure DevOps Server 2019 Update 1 Veröffentlichungsdatum: 20. August 2019

Hinweis

Das Datenmigrationstool ist ungefähr drei Wochen nach dieser Version für Azure DevOps Server 2019 Update 1 verfügbar. Die Liste der derzeit unterstützten Versionen für den Import finden Sie hier.


RC2 Veröffentlichungsdatum: 23. Juli 2019

RC2 enthält mehrere Bugfixes seit RC1 und ist die endgültige geplante Vorabrelease.


RC1 Veröffentlichungsdatum: 2. Juli 2019

Zusammenfassung der Neuerungen in Azure DevOps Server 2019 Update 1

Azure DevOps Server 2019 Update 1 führt viele neue Features ein. Einige der Highlights sind unter anderem:

Sie können auch zu einzelnen Abschnitten springen, um die neuen Features anzuzeigen:


Allgemein

Dunkles Thema

Das dunkle Design war ein beliebtes Feature in Azure DevOps Services und ist jetzt in Azure DevOps Server verfügbar. Sie können das dunkle Design aktivieren, indem Sie im Menü unter Ihrem Avatar oben rechts auf jeder Seite "Design" auswählen.

Design „Dunkel“

Boards

Neuer Einfacher Prozess

In der Vergangenheit war Agile der Standardprozess für neue Projekte und bietet einen robusten und flexiblen Satz von Arbeitsaufgabentypen und -zuständen für eine Vielzahl von Projektbereitstellungsmethoden. Für einige Teams, die mit anderen Tools vertrauter sind oder die wachsen und einen leistungsfähigeren Toolsatz einführen möchten, möchten Sie schnell mit der Terminologie beginnen, mit der sie vertrauter sind.

Der neue Grundlegende Prozess bietet drei Arbeitsaufgabentypen (Epics, Issues und Tasks), um Ihre Arbeit zu planen und nachzuverfolgen. Es wird empfohlen, Probleme zu verwenden, um Elemente wie Benutzergeschichten, Fehler und Features während der Verwendung von Epics zu verwenden, um Probleme in größeren Arbeitseinheiten zu gruppieren. Wenn Sie Fortschritte bei Ihrer Arbeit machen, verschieben Sie Elemente entlang eines einfachen Zustandsworkflows von To Do, Do und Done.

Grundlegender Prozess

Sehen Sie sich die Dokumentation zum Nachverfolgen von Problemen und Aufgaben an, um Ihnen bei den ersten Schritten mit Ihrem neuen Projekt zu helfen.

Statuswertreihenfolge im Arbeitsaufgabenformular

Zuvor wurde der Statuswert des Arbeitsaufgabenformulars alphabetisch sortiert. Mit diesem Update haben wir geändert, wie die Statuswerte so angeordnet sind, dass sie der Workflowreihenfolge in den Prozesseinstellungen entsprechen. Sie können auch die Reihenfolge der Zustände in jeder Kategorie in den Zustandsanpassungseinstellungen ändern.

Zustandsreihenfolge

Featureaktivierung ist nicht mehr verfügbar

Kunden müssen den XML-Code für jedes Projekt manuell aktualisieren, um neue Features nach dem Upgrade ihrer Sammlung zu aktivieren.

Featureaktivierung

In der Dokumentation erfahren Sie, wie Sie bestimmte Features aktivieren.

Referenzmaterial mit besseren Anhängen für Arbeitselemente organisieren

Wenn Sie Dateien an Arbeitsaufgaben anfügen, können Sie und Ihr Team Referenzmaterialien zentralisieren, sodass sie immer in der Nähe sind, wenn Sie sie benötigen. Es ist jetzt einfacher, eine neue Anlage hinzuzufügen, indem Sie die Datei einfach an eine beliebige Stelle im Arbeitsaufgabenformular ziehen und ablegen. Sie können die Anlagen weiterhin als Liste anzeigen oder zu einer Rasteransicht wechseln, um eine Miniaturansicht anzuzeigen. Doppelklicken Sie auf die Datei, um eine Vorschau zu öffnen, und durchlaufen Sie sie, um die benötigten Informationen schnell zu finden.

Anlagen für Arbeitsaufgaben

Freigeben des Boards Ihres Teams mithilfe eines Badges

Die README-Datei des Repositorys ist häufig die Startseite, an die sich Ihr Projektteam wendet, um Informationen darüber zu erfahren, wie Sie zu Ihrer Lösung beitragen und diese verwenden können. Wie bei einem Build- oder Bereitstellungsstatus in Azure-Pipelines können Sie nun Ihrem README-Signal für das Board Ihres Teams in Azure Boards hinzufügen. Sie können das Signal so konfigurieren, dass nur die Spalten "In Bearbeitung" oder alle Spalten angezeigt werden, und sogar das Signal öffentlich sichtbar machen, wenn Ihr Projekt open Source ist.

Kurzes Video, das zeigt, wie Sie die Boards Ihres Teams mit Badge teilen.

Wenn Ihre README auf Markdown basiert, können Sie einfach das Markdown-Beispiel von der Seite mit den Statussignaleinstellungen kopieren und in Ihre Datei einfügen.

Screenshot mit Badge in einer README auf GitHub.

Abfragen von Aufgaben basierend auf dem Beginn des Tages, der Woche, des Monats oder des Jahres

Während Sich Teams häufig auf die Arbeit im Kontext der nächsten oder basierend auf Sprint-Iterationen konzentrieren, ist es oft interessant, sich mit der Arbeit des Kalenders zu befassen, um über alle Arbeiten zu berichten, die im letzten Monat oder im ersten Quartal des Jahres stattgefunden haben. Jetzt können Sie den folgenden neuen Satz von @StartOf Makros zusammen mit einem beliebigen datumsbasierten Feld verwenden, um basierend auf dem Anfang des Tages, der Woche, des Monats oder des Jahres abzufragen:

  • @StartOfYear
  • @StartOfMonth
  • @StartOfWeek
  • @StartOfDay

Jedes dieser Makros akzeptiert auch eine neue Modifiziererzeichenfolge, mit der Sie die Daten nach verschiedenen Datumseinheiten verschieben können. Sie können z. B. eine Abfrage schreiben, um alle Arbeitsaufgaben zu finden, die im ersten Quartal dieses Jahres abgeschlossen wurden, indem Sie das Statusänderungsdatum >= @StartOfYear und das Statusänderungsdatum <= @StartOfYear("+3M" abfragen. Weitere Informationen finden Sie in der Dokumentation zu Abfragemakros .

Screenshot der Abfrage für Arbeit relativ zum Anfang des Tages, der Woche, des Monats oder des Jahres.

Bearbeiten und Löschen von Diskussionskommentaren

Wir freuen uns, die Verfügbarkeit einer hochgradig abgestimmten Entwicklercommunity-Funktion bekannt zu geben, Kommentare in der Diskussion Ihrer Arbeitsaufgabe in Azure Boards zu bearbeiten und zu löschen. Wenn Sie Ihren Kommentar bearbeiten möchten, zeigen Sie einfach auf einen Kommentar, den Sie besitzen, und Es werden zwei neue Schaltflächen angezeigt. Wenn Sie auf das Bleistiftsymbol klicken, wechseln Sie in den Bearbeitungsmodus und können einfach Ihre Bearbeitungen vornehmen und die Schaltfläche "Aktualisieren" drücken, um Ihre Bearbeitungen zu speichern.

Screenshot mit Diskussionskommentaren.

Wenn Sie auf das Überlaufmenü klicken, wird die Option zum Löschen Ihres Kommentars angezeigt. Nachdem Sie darauf geklickt haben, werden Sie erneut aufgefordert, zu bestätigen, dass Sie diesen Kommentar löschen möchten, und der Kommentar wird gelöscht.

Screenshot, der zeigt, wie Diskussionskommentare gelöscht werden.

Sie erhalten eine vollständige Ablaufverfolgung aller bearbeiteten und gelöschten Kommentare auf der Registerkarte "Verlauf" im Arbeitsaufgabenformular. Sie werden auch sehen, dass wir die Benutzeroberfläche unserer Diskussionserfahrung aktualisiert haben, um es moderner und interaktiver zu gestalten. Wir haben Blasen um Kommentare herum hinzugefügt, um es deutlicher zu machen, wo einzelne Kommentare beginnen und enden.

Exportieren von Abfrageergebnissen in eine CSV-Datei

Sie können jetzt Abfrageergebnisse direkt in eine CSV-Formatdatei aus dem Web exportieren.

Kurzes Video, das zeigt, wie Abfrageergebnisse exportiert werden.

Wenn Sie nun eine Arbeitsaufgabe innerhalb des Kommentars eines Problems, einer Pullanforderung oder eines Commits in GitHub mithilfe der AB#{work item ID} Syntax Erwähnung, werden diese Erwähnung zu Links, auf die Sie klicken können, um direkt zur Erwähnung arbeitsaufgabe zu navigieren.

Dadurch wird kein formeller Link erstellt, über den die Arbeitsaufgabe in Azure Boards für jede verwandte Unterhaltung aufgeschlüsselt wird. Stattdessen bietet Ihr Team eine Möglichkeit, etwas mehr Informationen zu Arbeitsaufgaben bereitzustellen, während Code oder ein vom Kunden gemeldetes Problem diskutiert wird. Weitere Informationen finden Sie in der GitHub-Integrationsdokumentation von Azure Boards.

Screenshot einer Pullanforderung auf GitHub.

Akzeptieren von und Reagieren auf Issues in GitHub, Planen in Azure Boards

Jetzt können Sie Arbeitsaufgaben in Azure Boards mit verwandten Problemen in GitHub verknüpfen. Mit dieser neuen Art von Verknüpfung sind jetzt mehrere andere Szenarien möglich. Wenn Ihr Team weiterhin Fehlerberichte von Benutzern akzeptieren möchte, z. B. als Probleme in GitHub, aber die Arbeit des Teams insgesamt in Azure Boards zu verknüpfen und zu organisieren, können Sie jetzt.

Screenshot, der zeigt, dass Sie Arbeitsaufgaben in Azure Boards mit verwandten Problemen in GitHub verknüpfen können.

Die gleiche Erwähnung Syntax, die Ihr Team für Commits und Pullanforderungen verwendet, gilt weiterhin, und natürlich können Sie manuell in Azure Boards mit der Problem-URL verknüpfen. Weitere Informationen finden Sie in der Dokumentation zu GitHub & Azure Boards .

Screenshot, der zeigt, wie Sie manuell in Azure Boards mit der GitHub-Problem-URL verknüpfen.

Schnelles Anzeigen von verknüpften GitHub-Aktivitäten auf dem Kanban-Board

Wenn Sie das Kanban-Board selbst oder als Team überprüfen, haben Sie häufig Fragen wie "hat dieses Element noch entwickelt?" oder "ist dieses Element noch überprüft?" Mit den neuen GitHub-Anmerkungen auf dem Kanban-Board können Sie jetzt einen schnellen Eindruck davon erhalten, wo sich ein Element befindet und direkt zu GitHub commit, Pullanforderung oder Problem navigiert, um weitere Details zu erhalten. Weitere Informationen zu diesem Thema und den anderen Anmerkungen zu Aufgaben und Tests finden Sie in der Dokumentation "Customize Karte s".

Screenshot, der zeigt, wie verknüpfte GitHub-Aktivitäten aus dem Kanban-Board angezeigt werden.

Repos

Pull Requests entwerfen

Um zu verhindern, dass Pull-Anforderungen abgeschlossen werden, bevor sie bereit sind und es einfach machen können, Arbeiten in Bearbeitung zu erstellen, die möglicherweise nicht alle umfassen, unterstützen wir jetzt Entwurfs-Pull-Anforderungen.

Entwurfs-Pullanforderungen können erstellt werden, indem Sie im Dropdownmenü "Erstellen" die Option "Als Entwurf erstellen" auswählen, wenn Sie eine Pullanforderung erstellen.

PR-Entwurf erstellen

Nachdem Sie eine Entwurfs-Pullanforderung erstellt haben, wird ein Signal angezeigt, das den Status neben dem Titel angibt.

Screenshot einer Pullanforderung, die zeigt, dass es sich um einen ENTWURF handelt.

Entwurfs-Pullanforderungen enthalten keine Bearbeiter oder führen standardmäßig Builds aus, ermöglichen es Ihnen jedoch, Prüfer manuell hinzuzufügen und Builds auszuführen. Wenn Sie die Pullanforderung auf eine normale Pull-Anforderung heraufstufen möchten, klicken Sie einfach auf die Schaltfläche "Veröffentlichen " auf der Detailseite der Pull-Anforderung.

Abgelaufene Builds zur automatischen Vervollständigung von Pull Requests erneut ausführen

Azure Repos stellt jetzt automatisch abgelaufene Builds in die Warteschlange, die durch eine Pullanforderungsrichtlinie ausgelöst wurden. Dies gilt für Pullanforderungen, die alle anderen Richtlinien bestanden haben und auf "automatisch abgeschlossen" festgelegt sind.

Wenn pull-Anforderungen zuvor Richtlinien wie erforderliche Prüfer hatten, kann der Genehmigungsprozess zu lange dauern, und ein zugeordneter Build kann ablaufen, bevor ein Prüfer die Pullanforderung genehmigt hat. Wenn die Pullanforderung so eingestellt wurde, dass sie automatisch abgeschlossen wird Standard blockiert, bis ein Benutzer den abgelaufenen Build manuell in die Warteschlange gestellt hat. Mit dieser Änderung wird der Build automatisch in die Warteschlange gestellt, damit die Pullanforderung nach einem erfolgreichen Build automatisch abgeschlossen werden kann.

Hinweis

Diese Automatisierung führt nur eine Warteschlange von bis zu fünf abgelaufenen Builds pro Pullanforderung durch und versucht nur einmal, jeden Build erneut in die Warteschlange zu stellen.

Anzeigen nur der linken oder rechten Datei in einer Pull Request

Heute können Sie beim Anzeigen von Dateiänderungen in einer Pullanforderung entweder einen Parallel-Diff- oder Inline-Diff-Modus verwenden. Wir haben Feedback erhalten, dass viele von Ihnen nur die Originaldatei oder die geänderte Datei sehen möchten, ohne sie zu vergleichen, daher haben wir eine neue Option hinzugefügt, mit der Sie entweder die linke Datei oder die rechte Datei einzeln anzeigen können.

Screenshot der Optionen für parallele Diff-Optionen mit dem Mauszeiger über den geänderten Inhalt anzeigen.

Neue Mergetypen zum Abschließen von Pull Requests

Sie haben jetzt weitere Optionen beim Zusammenführen der Änderungen von einer Pullanforderung an die Ziel-Verzweigung. Wir haben Unterstützung für zwei unserer am häufigsten angeforderten Features für die Entwicklercommunity hinzugefügt: Fast-Forward-Zusammenführung und semi-lineare Zusammenführung (auch als "Rebase and Merge" bezeichnet).

Im Dialogfeld "Pullanforderung abschließen" werden nun diese neuen Optionen angezeigt:

Screenshot mit neuen Zusammenführungstypen zum Abschließen von Pullanforderungen.

Auf der aktualisierten Richtlinienverwaltungsseite können Administratoren steuern, welche Zusammenführungsstrategien für eine Verzweigung oder einen Ordner von Verzweigungen zulässig sind.

Screenshot des Abschnitts

Hinweis

Vorhandene Richtlinien werden weiterhin erzwungen. Wenn Ihre Verzweigung derzeit über eine Richtlinie "nur squashen zusammenführen" verfügt, müssen Sie diese Richtlinie bearbeiten, um die neuen Zusammenführungsstrategien zu verwenden.

Es gibt einige Situationen, in denen die Neubasierung während des Abschlusses der Pullanforderung nicht möglich ist:

  • Wenn eine Richtlinie für die Zielverzweigung die Verwendung von Rebase-Strategien verbietet, benötigen Sie die Berechtigung "Verzweigungsrichtlinien außer Kraft setzen".
  • Wenn die Quellverzweigung der Pullanforderung Richtlinien enthält, können Sie sie nicht neu zuweisen. Durch die Neubasierung wird der Quellverzweigung geändert, ohne den Richtliniengenehmigungsprozess durchzugehen.
  • Wenn Sie die Zusammenführungskonflikterweiterung zum Beheben von Zusammenführungskonflikten verwendet haben. Konfliktauflösungen, die auf einen Drei-Wege-Zusammenführung angewendet werden, sind selten erfolgreich (oder sogar gültig), wenn alle Commits in einer Pullanforderung jeweils einzeln basieren.

In all diesen Fällen haben Sie weiterhin die Möglichkeit, Die Verzweigung lokal zu lokal zu platzieren und auf den Server zu übertragen, oder squashen Zusammenführen Ihrer Änderungen beim Abschließen der Pullanforderung.

Filtern nach Zielbranch in Pull Requests (PRs)

Pull-Anforderungen ermöglichen Es Ihrem Team, Code zu überprüfen und Feedback zu Änderungen zu geben, bevor sie in die Standard Verzweigung zusammengeführt werden. Sie sind ein wichtiger Bestandteil der Workflows vieler Teams, da Sie vorgeschlagene Änderungen durchlaufen, Kommentare hinterlassen und abstimmen können, um Codeänderungen zu genehmigen oder abzulehnen.

Damit Sie Ihre Pullanforderungen einfacher finden können, haben wir eine Filteroption hinzugefügt, mit der Sie mithilfe der Ziel-Verzweigung nach PRs suchen können.

Screenshot der Azure Pipelines Pull-Anforderungsfilteroptionen.

Sie können auch die Zielzweigfilterung verwenden, um die Ansicht "Pullanforderungen" auf der Registerkarte "Mine " anzupassen.

Screenshot der Pullanforderung anpassen auf der Registerkarte

Zulassen von Erweiterungen für das Hinzufügen von Syntaxhervorhebung und AutoVervollständigen

Derzeit veröffentlichen wir syntaxheraushebungen für eine Teilmenge von Sprachen, die vom Monaco-Editor unterstützt werden. Viele von Ihnen möchten jedoch ihre eigene Syntaxmarkierung für Sprachen erstellen, die wir nicht unterstützen.

Mit diesem Update haben wir einen Erweiterungspunkt hinzugefügt, der Erweiterungen das Hinzufügen von Syntaxmarkierungen und AutoVervollständigen zum Datei-Explorer und Pullanforderungen-Ansichten ermöglicht.

Hier finden Sie ein Beispiel für eine Erweiterung, die dieses Feature veranschaulicht.

Darüber hinaus wurde Unterstützung für die Hervorhebung der Kusto-Sprachsyntax hinzugefügt.

Erweiterungspunkt für die Erstellung von Repositorys

Wir haben einen Erweiterungspunkt hinzugefügt, damit Sie der Repositoryauswahl neue Elemente hinzufügen können. Mit diesem Erweiterungspunkt können Sie dem Menü für die Repositoryauswahl benutzerdefinierte Aktionen (Umleitungen, Popups usw.) hinzufügen und Abläufe wie alternative Repositoryerstellungsszenarien aktivieren.

Screenshot der Repositoryerstellungserweiterung.

Verbesserte Unterstützung für Codierungen

Das Bearbeiten und Speichern von Dateien im Web würde zuvor nur als UTF-8-Codierung gespeichert, und wir haben Sie nicht aufgefordert, wenn sich die Dateicodierung geändert hat. Jetzt geben wir Ihnen eine Warnung, wenn Sie versuchen, eine Datei zu speichern, die nicht über das Web codiert ist (was nur UTF-Codierung unterstützt). Darüber hinaus haben wir Unterstützung für UTF-16- und UTF-32-Codierung über den Web-Pushes-Endpunkt hinzugefügt. Dies bedeutet, dass wir den Codierungstyp beibehalten, damit Sie sie nicht als UTF-8 umschreiben müssen.

Der folgende Screenshot zeigt und zeigt das Dialogfeld, das Sie sehen, wenn Sie Codierungsänderungen durch einen Web-Push einführen.

Screenshot mit einer Warnung, die besagt: Nicht-ASCII-Zeichen wurden hinzugefügt. Commiting codiert diese Datei als Unicode.

Unterstützung für den get-Befehl von Go in Azure Repos

Go ist eine Open Source-Programmiersprache, die auch als Golang bezeichnet wird. In Go können Sie den Befehl "Abrufen" verwenden, um Pakete und Abhängigkeiten herunterzuladen und zu installieren. Mit diesem Update haben wir Unterstützung für go get ein Azure DevOps-Repository hinzugefügt. Mit go get können Sie Pakete herunterladen, deren Abhängigkeiten durch die Importpfade benannt sind. Sie können das import Schlüsselwort verwenden, um den Importpfad anzugeben.

Pipelines

Web-Editor mit IntelliSense für YAML-Pipelines

Wenn Sie YAML verwenden, um Ihre Pipelines zu definieren, können Sie jetzt die neuen Editorfeatures nutzen, die mit dieser Version eingeführt wurden. Unabhängig davon, ob Sie eine neue YAML-Pipeline erstellen oder eine vorhandene YAML-Pipeline bearbeiten, können Sie die YAML-Datei im Pipelineweb-Editor bearbeiten. Verwenden Sie BEIM Bearbeiten der YAML-Datei STRG+LEERTASTE für IntelliSense.Use STRG+SPACE for IntelliSense support as you edit the YAML file. Sie sehen die hervorgehobenen Syntaxfehler und erhalten auch Hilfe zur Behebung dieser Fehler.

Screenshot mit hervorgehobenen Syntaxfehlern.

Aufgabenassistent für die Bearbeitung von YAML-Dateien

Wir erhalten weiterhin viel Feedback, um die Bearbeitung von YAML-Dateien für Pipelines zu vereinfachen, sodass wir dem YAML-Editor einen Aufgaben-Assistenten hinzufügen. Damit haben Sie die gleiche vertraute Erfahrung zum Hinzufügen einer neuen Aufgabe zu einer YAML-Datei wie im klassischen Editor. Dieser neue Assistent unterstützt die meisten gängigen Aufgabeneingabetypen, z. B. Auswahllisten und Dienstverbindungen. Um den neuen Aufgaben-Assistenten zu verwenden, wählen Sie "Bearbeiten" für eine YAML-basierte Pipeline und dann den Aufgaben-Assistenten aus.

Dieses kurze Video zeigt, wie Sie den Aufgaben-Assistenten zum Bearbeiten von YAML-Dateien verwenden.

Auslösen von YAML-Pipelines mit Tags

YAML-Pipelines können ausgelöst werden, wenn Tags einem Commit hinzugefügt werden. Dies ist für Teams nützlich, deren Workflows Tags enthalten. Sie können z. B. einen Prozess starten, wenn ein Commit als "zuletzt bekannt" markiert ist.

Sie können angeben, welche Tags eingeschlossen und ausgeschlossen werden sollen. Zum Beispiel:

trigger:
  tags:
    include:
    - releases/*
    exclude:
    - releases/old*

Deklarieren von Containerressourcen inline

Zuvor mussten Sie Ihre Containerressourcen in YAML-Pipelines deklarieren und dann anhand des Namens darauf verweisen. Wir bieten jetzt eine Inlinesyntax für Fälle an, in denen Sie nicht mehrmals auf den Container verweisen werden.

jobs:
- job: my-container-job
  container:
    image: microsoft/dotnet:latest

Festlegen einer vorhandenen Pipeline auf den automatischen Abbruch, wenn Pull Requests aktualisiert werden

Standardmäßig werden pipelines, die durch Pullanforderungen (PRs) ausgelöst werden, abgebrochen, wenn ein neuer Commit an dieselbe PR verschoben wird. Dies ist in den meisten Fällen wünschenswert, da Sie in der Regel keine Pipeline auf veraltetem Code ausführen möchten. Wenn Sie dieses Verhalten nicht wünschen, können Sie "autoCancel: false" zu Ihrem PR-Trigger hinzufügen.

pr:
  branches:
    include:
    - main
    - releases/*
  autoCancel: false

Auswahl des Verzeichnisses für ausgecheckten Code in YAML-Pipelines

Zuvor haben wir Repos im s Verzeichnis unter $(Agent.BuildDirectory) ausgecheckt. Jetzt können Sie das Verzeichnis auswählen, in dem Ihr Git-Repository für die Verwendung mit YAML-Pipelines ausgecheckt wird.

Verwenden Sie die path Schlüsselwort (keyword), checkout und Sie haben die Kontrolle über die Ordnerstruktur. Im Folgenden finden Sie ein Beispiel für den YAML-Code, den Sie zum Angeben eines Verzeichnisses verwenden können.

steps:
- checkout: self
  path: my-great-repo

In diesem Beispiel wird Ihr Code im Arbeitsbereich des Agents in das my-great-repo Verzeichnis ausgecheckt. Wenn Sie keinen Pfad angeben, wird Ihr Repository weiterhin in ein Verzeichnis mit dem Namen sausgecheckt.

Neue Azure-App Dienstaufgaben, die für YAML optimiert sind

Wir unterstützen jetzt vier neue Aufgaben, die eine einfache und dennoch leistungsstarke Möglichkeit bieten, Azure-App Services mit modernen Entwicklern bereitzustellen. Diese Aufgaben verfügen über eine optimierte YAML-Syntax, die es einfach und intuitiv macht, Bereitstellungen für Azure-App Services zu erstellen, einschließlich WebApps, FunctionApps, WebApps für Container und FunctionApp für Container auf Windows- und Linux-Plattformen.

Wir unterstützen auch eine neue Hilfsprogrammaufgabe für die Dateitransformation und variablen Ersetzung für XML- und JSON-Formate.

Änderungen an Standardberechtigungen für neue Projekte

Bisher konnten Projekt-Mitwirkender s keine Pipelines erstellen, es sei denn, sie erhalten explizit die Berechtigung "Builddefinition erstellen". Für neue Projekte können Ihre Teammitglieder pipelines problemlos erstellen und aktualisieren. Diese Änderung verringert die Reibung für neue Kunden, die in Azure-Pipelines integriert sind. Sie können die Standardberechtigungen für die Gruppe "Mitwirkende" immer aktualisieren und deren Zugriff einschränken.

GitHub-Releases über Pipelines verwalten

GitHub-Versionen sind eine hervorragende Möglichkeit zum Packen und Bereitstellen von Software für Benutzer. Wir freuen uns, ihnen mitzuteilen, dass Sie sie jetzt mithilfe der GitHub Release-Aufgabe in Azure Pipelines automatisieren können. Mit der Aufgabe können Sie eine neue Version erstellen, vorhandene Entwürfe/veröffentlichte Versionen ändern oder ältere Versionen aufheben Karte. Es unterstützt Features wie das Hochladen mehrerer Objekte, das Markieren einer Version als Vorabversion, das Speichern einer Version als Entwurf und vieles mehr. Diese Aufgabe hilft Ihnen auch beim Erstellen von Versionshinweisen. Es kann auch automatisch die Änderungen (Commits und zugehörige Probleme) berechnen, die in dieser Version vorgenommen wurden, und sie den Versionshinweisen in einem benutzerfreundlichen Format hinzufügen.

Hier ist das einfache YAML für die Aufgabe:

task: GithubRelease@0 
displayName: 'Create GitHub Release'      
inputs:
  githubConnection: zenithworks
  repositoryName: zenithworks/pipelines-java
  assets: $(build.artifactstagingdirectory)/*.jar

Screenshot des Dialogfelds

Eine GitHub-Beispielversion, die mit dieser Aufgabe erstellt wurde:

Screenshot einer GitHub-Beispielversion, die mit dieser Aufgabe erstellt wurde.

Sie können jetzt einen Link zu bestimmten Zeilen im Buildprotokoll freigeben. Dies hilft Ihnen bei der Zusammenarbeit mit anderen Teammitgliedern bei der Diagnose von Buildfehlern. Wählen Sie einfach die Zeilen eines Protokolls aus der Ergebnisansicht aus, um ein Linksymbol zu erhalten.

Screenshot der Datei

Verbesserungen bei der Ressourcenautorisierung

Wir mussten Sicherheit für geschützte Ressourcen (z. B. Dienstverbindungen, Variablengruppen, Agentpools, sichere Dateien) bereitstellen, wenn in einer YAML-Datei darauf verwiesen wird. Gleichzeitig wollten wir es Ihnen erleichtern, Pipelines einzurichten und zu verwenden, die diese Arten von Ressourcen für Nichtproduktionsszenarien verwenden. Zuvor haben wir eine Einstellung hinzugefügt, um eine Ressource als "autorisiert für die Verwendung in allen Pipelines" zu kennzeichnen.

Mit diesem Update erleichtern wir Ihnen die Behebung eines Ressourcenautorisierungsproblems, auch wenn Sie eine Ressource nicht als solche gekennzeichnet haben. Wenn ein Build aufgrund eines Ressourcenautorisierungsfehlers fehlschlägt, wird in der neuen Oberfläche eine Option angezeigt, um die Verwendung dieser Ressourcen in der Pipeline explizit zu autorisieren, und fahren Sie dann fort. Teammitglieder mit Berechtigungen zum Autorisieren von Ressourcen können diese Aktion direkt aus einem fehlerhaften Build ausführen.

Screenshot einer Pipelinezusammenfassung mit Autorisierungsfehlern.

Neue Erweiterungsbeitragspunkte auf der Registerkarte für Pipelinetests

Wir haben das Erweiterungsframework weiter leistungsfähiger machen, indem wir auf der Registerkarte "Testergebnisse" in Pipelines zwei neue Beitragspunkte hinzufügen. Dadurch können Marketplace-Erweiterungen maßgeschneiderte Berichterstellungsfunktionen bereitstellen und weitere Interaktivität hinzufügen.

Die beiden Beitragspunkte sind:

  1. Schaltfläche "Benutzerdefinierte Aktion" in der Symbolleiste

    Manchmal möchten Sie möglicherweise eine Aktion ausführen, z. B. das Aktualisieren der Daten einer API oder das Ausführen von benutzerdefinierten Tools mithilfe von Metadaten aus Ihren Testergebnissen. Mit diesem Beitragspunkt können Sie Erweiterungen erstellen, die den unmittelbaren Kontext des ausgewählten Testergebnisses verwenden, um der Schaltfläche *Benutzerdefinierte Aktion eine benutzerdefinierte Aktion hinzuzufügen.

    Screenshot der Option

  2. Registerkarte "Benutzerdefinierte Details" im Detailbereich

    Möglicherweise verfügen Sie über eine Vielzahl von Workflows für den Testberichtverbrauch und möchten möglicherweise verschiedene Datenpunkte für fehlgeschlagene Tests für Debugging und Analyse anzeigen. Mithilfe dieses Beitragspunkts kann Ihr Team dem Detailbereich eine neue Registerkarte hinzufügen, die angezeigt wird, wenn Sie die ergebniszeile des Tests im Datenraster auswählen. Diese neue Registerkarte kann eine Ansicht mit statischem Inhalt oder dynamischen Daten anzeigen, die mit internen oder externen APIs abgerufen werden.

Agent für einmalige Ausführung

Wenn Sie Infrastruktur wie Azure-Containerinstanzen verwenden, um flexible private Agents auszuführen, möchten Sie häufig, dass jeder Agent nur einen Auftrag akzeptiert, bevor er weggeht. Bisher war dies nicht einfach, da Sie den Agenten beenden mussten (möglicherweise dazu führen, dass ein Fehler gemeldet wurde) oder das Risiko akzeptieren, dass ein Agent möglicherweise einen anderen Auftrag erhält, bevor Sie ihn herunterfahren konnten. Mit diesem Update haben wir der Agentkonfiguration das Flag "-once " hinzugefügt. Wenn Sie den Agent auf diese Weise konfigurieren, akzeptiert er nur einen Auftrag und beendet sich dann selbst.

Update der Benutzeroberfläche für Agent-Pool

Die Verwaltungsseite für Agentpools in den Projekteinstellungen wurde mit einer neuen Benutzeroberfläche aktualisiert. Jetzt können Sie ganz einfach alle Aufträge sehen, die in einem Pool ausgeführt werden. Darüber hinaus können Sie erfahren, warum ein Auftrag nicht ausgeführt wird.

Screenshot eines UX-Updates (Agent Pool User Experience)

Bereitstellen auf fehlgeschlagenen Zielen in einer Bereitstellungsgruppe

Standardmäßig werden alle Aufträge von Azure Pipelines erneut ausgeführt, wenn Sie eine zuvor fehlgeschlagene Ausführung erneut bereitstellen. Jetzt können Sie dieses Verhalten außer Kraft setzen, indem Sie die Bereitstellungsoption bei der Bereitstellung konfigurieren. Durch Auswählen der Option "Alle Aufträge" und "Limit auf fehlgeschlagene Ziele" in einer Bereitstellungsgruppenoption führt die erneute Ausführung alle Aufträge aus und überspringt die Bereitstellungen an die Ziele, die bereits auf dem neuesten Stand sind.

Screenshot der ausgewählten Option

Automatische erneute Bereitstellung nach Fehlern

Wenn eine Bereitstellung in einer Phase fehlschlägt, können Azure Pipelines jetzt die letzte erfolgreiche Bereitstellung automatisch erneut bereitstellen. Sie können die Phase so konfigurieren, dass die letzte erfolgreiche Version automatisch bereitgestellt wird, indem Sie den Trigger für die automatische erneute Bereitstellung in den Bedingungen nach der Bereitstellung konfigurieren. Wir planen, der Konfiguration für die automatische erneute Bereitstellung in einem zukünftigen Sprint zusätzliche ausgelöste Ereignisse und Aktionen hinzuzufügen. Weitere Informationen finden Sie in der Dokumentation zu Bereitstellungsgruppen .

Screenshot des Dialogfelds

Grafana annotations service hook (Service Hook für Grafana-Anmerkungen)

Wir unterstützen jetzt einen neuen Diensthaken, mit dem Sie Grafana-Anmerkungen für abgeschlossene Bereitstellungsereignisse zu einem Grafana-Dashboard hinzufügen können. Auf diese Weise können Sie Bereitstellungen mit den Änderungen an Anwendungs- oder Infrastrukturmetriken korrelieren, die in einem Grafana-Dashboard visualisiert werden.

Screenshot des Grafana-Dashboards mit Änderungen in Metriken.

Query Azure Monitor alerts tasks (Abfragen von Azure Monitor-Warnungstasks)

Die vorherige Version der Abfrage-Azure Monitor-Aufgabe unterstützt das Abfragen von Warnungen nur auf der klassischen Überwachungsoberfläche. Mit dieser neuen Version der Aufgabe können Sie Warnungen zur einheitlichen Überwachungserfahrung abfragen, die kürzlich von Azure Monitor eingeführt wurde.

Screenshot der Vorschau der Azure Monitor-Abfragebenachrichtigungen.

Inline input of spec file in Deploy to Kubernetes task (Inlineeingabe einer Spezifikationsdatei im Kubernetes-Bereitstellungstask)

Zuvor mussten Sie mit der Kubernetes-Bereitstellungsaufgabe einen Dateipfad für die Konfiguration angeben. Jetzt können Sie auch die Konfigurationsinline hinzufügen.

Screenshot der Inlinekonfigurationsfunktion.

Docker CLI Installer task (Docker-CLI-Installertask)

Diese Aufgabe ermöglicht die Installation einer beliebigen Version von Docker CLI auf den Agents, wie vom Benutzer angegeben.

Screenshot der installierten DockerCLI.

Wiederherstellen gelöschter Releasepipelines

Das Löschen nicht verwendeter Releasepipelines trägt dazu bei, die Versionspipelineliste sauber beizubehalten, aber manchmal löschen Sie versehentlich etwas. Mit diesem Update ist es jetzt möglich, eine Veröffentlichungspipeline wiederherzustellen, die innerhalb der letzten 30 Tage gelöscht wurde. Wir haben dem linken Bereich der Seite "Versionen" eine neue Registerkarte hinzugefügt, auf der eine Liste der gelöschten Releasepipelinen angezeigt wird. In dieser Ansicht können Sie eine gelöschte Releasepipeline wiederherstellen, indem Sie die Pipeline aus der Liste auswählen und auf die Schaltfläche "Wiederherstellen " klicken.

Screenshot der Option

Benachrichtigungen zu Fehlern bei Anforderungen zur Releaseerstellung

Sie können Benachrichtigungen festlegen, um E-Mails zu empfangen, wenn Änderungen an Ihren Builds, Der Codebasis und anderen Vorgängen vorgenommen werden. Sie können z. B. eine Benachrichtigung festlegen, um benachrichtigt zu werden, wenn Ihnen eine Arbeitsaufgabe zugewiesen ist.

Mit diesem Update haben wir der Kategorie "Release" ein neues Benachrichtigungsabonnement hinzugefügt. Diese Benachrichtigung sendet Ihnen eine E-Mail, wenn eine Anforderung für eine Releaseerstellung fehlschlägt. Ein Beispielszenario, in dem dies hilfreich sein kann, ist, wenn eine Anforderung zum Erstellen einer Version fehlschlägt, da eine Artefaktversion nicht verfügbar ist. Informationen zum Verwalten Ihrer Benachrichtigungen finden Sie hier in der Dokumentation.

Screenshot des Assistenten

Releases bei Quellen- oder Pipelineänderungen planen

Wenn Sie zuvor einen geplanten Releasetrigger hatten, würde eine Veröffentlichung auch dann ausgelöst, wenn keine Änderung im upstream-Artefakt oder in der Releasedefinition erkannt wurde. Dem Bereich "Schedule release trigger panel" wurde eine Option hinzugefügt, um Versionen nur zu planen, wenn sich die Artefaktversion oder die Releasedefinition geändert hat.

Screenshot des Abschnitts

Beitragspunkt für Variablen im Dialogfeld „Release erstellen“

Zuvor mussten die Variablenwerte, die während der Freigabeerstellung benötigt werden, vom Benutzer ohne Unterstützung oder Vorschläge eingegeben werden. Wir haben Beitragspunkte zum Dialogfeld "Neues Release erstellen" hinzugefügt, um Erweiterungen zu unterstützen, die beim Auffüllen des Werts einer Variablen während der Releaseerstellung helfen.

Screenshot des Dialogfelds

In Azure Service Bus-Warteschlangen veröffentlichen

Wir haben die Aufgabe "Agentless Job Build" um die Möglichkeit erweitert, Nachrichten in Sitzungswarteschlangen zu veröffentlichen. Diese Option wurde der Aufgabe "In Azure Service Bus veröffentlichen" hinzugefügt.

Screenshot der Aufgabe

Neue Azure-Abonnementoption für Kubernetes-Dienstverbindung

Mit Dienstverbindungen für Builds und Versionen können Sie eine Verbindung mit externen und Remotediensten herstellen, um Aufgaben für einen Build oder eine Bereitstellung auszuführen. Sie können eine Dienstverbindung über die Administratoreinstellungen Ihres Projekts definieren und verwalten.

Mit diesem Update haben wir dem Kubernetes-Dienstverbindungsformular eine Authentifizierungsoption hinzugefügt. Jetzt können Sie das Azure-Abonnement auswählen, um Ihre Verbindung zu authentifizieren. Dies erleichtert die Bereitstellung für bestimmte Namespaces, indem Kubernetes-Verbindungen mit Ihrem Azure-Abonnement- und Clusternamen eingerichtet werden.

Für einen rollenbasierten Zugriffssteuerungscluster (RBAC) werden ServiceAccount - und RoleBinding-Objekte im ausgewählten Namespace erstellt. Das RoleBinding-Objekt beschränkt die Vorgänge des erstellten Dienstkontos nur auf den ausgewählten Namespace. Für einen deaktivierten RBAC-Cluster verfügt das erstellte Dienstkonto über clusterweite Berechtigungen für Namespaces.

Screenshot des Dialogfelds

Azure-Containerregistrierung in Docker-Registrierungsdienstverbindung

Jetzt können Sie eine Docker-Registrierungsdienstverbindung über die Einstellungsseite Ihres Projekts erstellen. Um die Verbindung zu erstellen, wählen Sie eine Azure-Containerregistrierung in einem der Abonnements aus, die Ihrer Azure Active Directory (AAD)-Identität zugeordnet sind. Alle Aufgaben, die Dienstverbindungen mit Containerregistrierungen erfordern, z . B. Docker@2 und KubernetesManifest@0 , unterstützen eine einzige Möglichkeit zum Angeben einer Verbindung.

Screenshot, der zeigt, wie Eine Docker-Dienstverbindung hinzugefügt wird.

Nach Ordnernamen in Releasedefinitionen suchen

Sie können Ihre Freigabedefinitionen organisieren, indem Sie sie in Ordnern speichern. Zuvor haben Sie nicht die Möglichkeit, eine Suche nach Ordnern durchzuführen. Es war schwierig, eine bestimmte Releasedefinition zu finden, wenn Sie viele Ordner erstellt haben. Jetzt können Sie in der Releasedefinition nach Ordnernamen suchen, wodurch die gesuchten Definitionen einfacher zu finden sind.

Screenshot mit in Ordnern gespeicherten Releasedefinitionen.

Der Installer für Duffle wurde in der Build- und Releasepipeline unter „Tasks“ hinzugefügt

Duffle ist ein Befehlszeilentool, mit dem Sie Cloud Native Application Bundles (CNAB) installieren und verwalten können. Mit CNABs können Sie containereigene Apps und deren Dienste bündeln, installieren und verwalten.

In diesem Update haben wir eine neue Aufgabe für Build- und Releasepipelines hinzugefügt, mit der Sie eine bestimmte Version der Duffle-Binärdatei installieren können.

Screenshot des Duffle-Toolinstallationsprogramms.

Kubernetes-Manifestaufgabe

Wir haben unserer Releasepipeline eine neue Aufgabe hinzugefügt, um die Bereitstellung in Kubernetes-Clustern mithilfe von Manifestdateien zu vereinfachen. Diese Aufgabe bietet die folgenden Vorteile im Vergleich zur Verwendung der kubectl-Binärdatei in Skripts:

  • Artefaktersetzung – Die Bereitstellungsaktion führt als Eingabe einer Liste von Containerimages aus, die zusammen mit ihren Tags oder Digests angegeben werden können. Dies wird in die Nichtvorlagenversion der Manifestdateien ersetzt, bevor sie auf den Cluster angewendet wird, um sicherzustellen, dass die richtige Version des Bilds von den Knoten des Clusters abgerufen wird.

  • Manifeststabilität – Der Rolloutstatus wird auf die Kubernetes-Objekte überprüft, die zur Integration von Stabilitätsprüfungen bereitgestellt werden, während der Vorgangsstatus als Erfolg/Fehler ermittelt wird.

  • Anmerkungen zur Rückverfolgbarkeit – Anmerkungen werden den bereitgestellten Kubernetes-Objekten hinzugefügt, um Informationen zur Rückverfolgbarkeit von Ursprungsorganisation, Projekt, Pipeline und Ausführung zu überlagern.

  • Bake Manifest - Die Backaktion der Aufgabe ermöglicht das Backen von Helm-Diagrammen in Kubernetes-Manifestdateien, damit sie auf den Cluster angewendet werden können.

  • Bereitstellungsstrategie – Die Auswahl der Canarystrategie mit Bereitstellungsaktion führt zur Erstellung des gewünschten Prozentsatzes von Workloads, die mit "-baseline " und "-canary " versehen sind, sodass sie während einer ManualIntervention Aufgabe verglichen werden können, bevor sie die Aktion zum Heraufstufen/Ablehnen der Aufgabe verwenden, um die zu speichernde Version abzuschließen.

steps:
- task: KubernetesManifest@0
  name: bake
  displayName: Bake K8s manifests from Helm chart
  inputs:
    action: bake
    helmChart: charts/sample
    overrides: 'image.repository:nginx'

- task: KubernetesManifest@0
  displayName: Deploy K8s manifests
  inputs:
    kubernetesServiceConnection: k8sSC1
    manifests: $(bake.manifestsBundle)
    containers: |
      nginx: 1.7.9

Upgrades für Docker-Tasks

Wir haben die Docker-Aufgabe aktualisiert, um die Pipelineerstellung zu vereinfachen. Der Befehl buildAndPush kann jetzt verwendet werden, um mehrere Tags für ein bestimmtes Container-Repository zu erstellen und in einem einzigen Schritt an mehrere Containerregistrierungen zu übertragen. Die Aufgabe kann Docker-Registrierungsdienstverbindungen für die Anmeldung bei Containerregistrierungen verwenden. Metadaten zur Rückverfolgbarkeit von Quell-Repositorys, Commit- und Build-Provenienz werden den mit dieser Aufgabe erstellten Bildern als Bezeichnungen hinzugefügt.

steps:
- task: Docker@2
  displayName: Container registry login - ACR1 service connection
  inputs:
    command: login
    containerRegistry: acr1
- task: Docker@2
  displayName: Container registry login - ACR2 service connection
  inputs:
    command: login
    containerRegistry: acr2
- task: Docker@2
  displayName: Build and push images
  inputs:
    repository: test
    tags: |
      d1
      d2

Installer für Kubectl-Tool

Wir haben eine neue Aufgabe hinzugefügt, mit der Sie eine bestimmte Version der Kubectl-Binärdatei auf den Agents installieren können. Die neuesten und semver-Versionszeichenfolgen wie "v1.14.0" werden als gültige Werte für die Kubectl-Versionsspezifikationseingabe akzeptiert.

Screenshot des Kubectl-Toolinstallationsprogramms.

Verbesserungen bei der ServiceNow-Integration

Eine Schlüsselfunktion für die teamübergreifende Zusammenarbeit besteht darin, jedem Team die Nutzung eines Diensts ihrer Wahl zu ermöglichen und eine effektive End-to-End-Übermittlung zu haben. Mit diesem Update haben wir die ServiceNow-Integration erweitert, um alle Arten von Änderungen (normal, Standard und Notfall) zu unterstützen. Darüber hinaus können Sie nun das Tor angeben, das zum Erstellen einer neuen Änderungsanforderung mit einer vorhandenen Vorlage verwendet wird, gemäß dem ITSM-Prozess, der in Ihrer Organisation befolgt wurde. Schließlich können Sie Freigaben auch basierend auf vorhandenen Änderungsanforderungen absteigen. Auf diese Weise können Sie CD übernehmen, ohne den von Ihren IT-Teams empfohlenen Prozess ändern zu müssen.

Screenshot des ServiceNow-Änderungsverwaltungsfeatures.

Unterstützung für Red Hat Enterprise Linux 6

Mit diesem Update haben wir Agent-Support für Red Hat Enterprise Linux 6 hinzugefügt. Sie können jetzt Agents für die Ausführung von Build- und Releaseaufträgen für die Red Hat Enterprise Linux 6-Plattform konfigurieren.

Unterstützung für das Az-Modul von Azure PowerShell

Azure PowerShell stellt eine Reihe von Cmdlets bereit, mit denen Sie Azure-Ressourcen über die Befehlszeile verwalten können. Im letzten Dezember wurde das Azure PowerShell Az-Modul verfügbar und ist jetzt das beabsichtigte Modul für die Verwaltung Ihrer Azure-Ressourcen.

Zuvor haben wir in unseren gehosteten Agents keine Unterstützung für das Azure PowerShell Az-Modul bereitgestellt. Mit der neuen Azure PowerShell-Aufgabenversion 4.* in Build- und Releasepipelinen haben wir Unterstützung für das neue Az-Modul für alle Plattformen hinzugefügt. Azure PowerShell-Aufgabenversion 3.* unterstützt weiterhin das AzureRM-Modul. Um jedoch mit den neuesten Azure-Diensten und -Features schritthalten zu können, empfehlen wir, so schnell wie möglich zur Azure PowerShell-Taskversion 4 zu wechseln.

Das Az-Modul verfügt über einen Kompatibilitätsmodus, mit dem Sie vorhandene Skripts verwenden können, während Sie sie aktualisieren, um die neue Syntax zu verwenden. Verwenden Sie den Enable-AzureRmAlias Befehl, um die Kompatibilität für das Az-Modul zu aktivieren. Mit Aliasen können Sie die alten Cmdlet-Namen mit az-Modul verwenden. Weitere Details zum Migrieren vom Azure RM-Modul zum Azure PowerShell Az-Modul finden Sie hier.

Hinweis

Sie müssen das Az-Modul auf Ihrem Agent-Computer installieren, wenn Sie private Agents verwenden.

Weitere Informationen zum Azure PowerShell Az-Modul finden Sie in der Dokumentation hier.

Azure Active Directory (AD)-Authentifizierungsunterstützung für Azure SQL-Aufgabe

Die Azure SQL-Aufgabe wurde erweitert, um die Verbindung mit einer Datenbank mithilfe von Azure AD (Integrated & Password) und einer Verbindungszeichenfolge zusätzlich zur vorhandenen Unterstützung für die SQL Server-Authentifizierung zu unterstützen.

Screenshot des Dialogfelds

Veröffentlichen von Buildartefakten mit langen Dateipfaden

Bisher gab es eine Einschränkung, die das Hochladen von Buildartefakten mit Pfaden mit mehr als 233 Zeichen verhinderte. Dies könnte verhindern, dass Sie Codeabdeckungsergebnisse von Linux- und macOS-Builds mit Dateipfaden hochladen, die länger als der Grenzwert sind. Der Grenzwert wurde aktualisiert, um lange Pfade zu unterstützen.

Continuous Integration (CI) für einen Commit überspringen

Jetzt können Sie Azure Pipelines anweisen, einen Commit zu ignorieren und die Ausführung einer Pipeline zu überspringen, die normalerweise vom Commit ausgelöst würde. Fügen Sie [skip ci] einfach die Commitnachricht des HEAD-Commits hinzu, und Azure-Pipelines überspringen CI. Sie können auch eine der unten aufgeführten Variationen verwenden. Dies wird für Commits für Azure Repos Git und GitHub Enterprise Server unterstützt.

  • [skip ci] oder [ci skip]
  • skip-checks: true oder skip-checks:true
  • [skip azurepipelines] oder [azurepipelines skip]
  • [skip azpipelines] oder [azpipelines skip]
  • [skip azp] oder [azp skip]
  • ***NO_CI***

Test Plans

Testergebnistrend (Advanced) Widget

Das Testergebnistrend-Widget (Advanced) bietet nahezu echtzeitbezogene Einblicke in Ihre Testdaten für mehrere Builds und Versionen. Das Widget "Testergebnistrend" (Advanced) zeigt einen Trend Ihrer Testergebnisse für Ihre Pipelines oder pipelinesübergreifend an. Sie können es verwenden, um die tägliche Anzahl von Tests, die Bestandensrate und die Testdauer nachzuverfolgen. Die Überwachung der Testqualität im Laufe der Zeit und die Verbesserung der Testsicherheit ist der Schlüssel für die Aufrechterhaltung einer fehlerfreien DevOps-Pipeline.

Screenshot des Testergebnistrend-Widgets (Erweitert).

Das Testergebnistrend-Widget (Advanced) hilft Ihnen, Ausreißer in Ihren Testergebnissen zu finden und Fragen zu beantworten, z. B.: Dauert die Ausführung von Tests länger als üblich? Welche Testdatei oder Pipeline wirkt sich auf die Gesamtdurchlaufrate aus? Was sind meine lang ausgeführten Tests?

Um Ihnen bei der Beantwortung dieser Fragen zu helfen, bietet das Widget die folgenden Features:

  • Zeigt einen Trend der Passrate und die Anzahl der Testergebnisse oder der Testdauer an.
  • Stellt Testergebnisse basierend auf mehreren Buildpipelines oder Releasepipelines dar.
  • Verwendet kombinierte Diagrammoptionen, um zwei Metriken über demselben Trend anzuzeigen.
  • Filtert die Testanzahl im Laufe der Zeit nach Testergebnis.
  • Filtert alle Testergebnisse nach Verzweigung oder Test
  • Stapelt Ihre Metriken durch Testattribute wie Priorität oder Umgebung
  • Gruppieren Von Daten zu Testdateien, Besitzern oder Pipelines

Das Widget ist sehr konfigurierbar, sodass Sie es für eine Vielzahl von Szenarien verwenden können.

Freigeben von Testlaufergebnissen per URL

Sie können automatisierte Tests so konfigurieren, dass sie als Teil eines Builds oder einer Veröffentlichung ausgeführt werden. Die veröffentlichten Testergebnisse können auf der Registerkarte "Tests " in der Build- oder Versionszusammenfassung angezeigt werden. Mit diesem Update haben wir ein Feature "Ergebnis-URL kopieren" hinzugefügt, damit Sie eine einzelne Testausführungsergebnisse für andere Personen in Ihrem Team freigeben können.

Die Freigabeebenen umfassen:

  • Ausführungsebene
  • Ergebnisebene
  • Einzelne Registerkarte, die im Testlauf ausgewählt ist
  • Die Freigabe ist auch mit allen konfigurierten Erweiterungsregisterkarten kompatibel.

Wenn Sie die URL freigeben, werden die Testausführungsergebnisse in der Vollbildansicht angezeigt.

Artifacts

NuGet-Pakete mit SemVer 2.0.0-Versionsnummern

Zuvor haben Azure Artifacts NuGet-Pakete mit SemVer 2.0.0.0-Versionsnummern nicht unterstützt (im Allgemeinen Versionsnummern, die den Buildmetadatenteil der Version enthalten, die durch ein +). Jetzt können Sie Pakete aus nuget.org speichern, die Buildmetadaten enthalten, und ihre eigenen Pakete mit Buildmetadaten übertragen. Gemäß der SemVer-Spezifikation und NuGet.org Richtlinie können Buildmetadaten nicht verwendet werden, um Pakete zu bestellen. Sie können also nicht sowohl als auch 1.0.0+build21.0.0+build1 in Azure Artifacts (oder nuget.org) veröffentlichen, da diese Versionen als gleichwertig betrachtet werden und somit den Unveränderlichkeitseinschränkungen unterliegen.

Herkunftsinformationen zu Paketen

Mit diesem Update haben wir es etwas einfacher gemacht, die Provenienz Ihrer Pakete zu verstehen: wer oder was sie veröffentlicht hat und aus welchem Quellcode sie stammen. Diese Informationen werden automatisch für alle Pakete aufgefüllt, die mit den Aufgaben NuGet, npm, Maven und Twine Authenticate (für Python) in Azure Pipelines veröffentlicht wurden.

Package usage stats (Statistiken zur Paketverwendung)

Bisher haben Azure Artifacts keine Möglichkeit bereitgestellt, die Verwendung oder Beliebtheit von Paketen zu messen. Mit diesem Update haben wir sowohl der Paketliste als auch den Paketdetails eine Anzahl von Downloads und Benutzern hinzugefügt. Sie können die Statistiken auf der rechten Seite einer seite sehen.

Screenshot der Statistiken zur Paketnutzung.

Unterstützung für Python-Pakete

Azure Artifacts können jetzt Python-Pakete hosten: Beide Pakete, die Sie selbst produzieren, und upstream-Pakete, die aus dem öffentlichen PyPI gespeichert wurden. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und in den Dokumenten.

Jetzt können Sie alle Ihre NuGet-, npm-, Maven- und Python-Pakete im selben Feed hosten.

Screenshot aller Pakete, die in demselben Feed gehostet werden.

Upstreamquellen für Maven

Upstream-Quellen sind jetzt für Maven-Feeds verfügbar. Dazu gehören das primäre Maven Central-Repository und Azure Artifacts-Feeds. Um Maven upstreams zu einem vorhandenen Feed hinzuzufügen, besuchen Sie feed-Einstellungen, wählen Sie den Upstream-Quellen-Pivot aus, und wählen Sie dann "Upstream-Quelle hinzufügen" aus.

Screenshot der Option

Bisher haben viele Artefakt-bezogene Buildaufgaben keine vollständige Unterstützung für die Proxyinfrastruktur von Azure Pipelines bereitgestellt, was zu Herausforderungen bei der Verwendung der Aufgaben von lokalen Agents führte. Mit diesem Update haben wir den folgenden Aufgaben Unterstützung für Proxys hinzugefügt:

  • Npm@1 ('npm' im Designer)
  • NuGetCommand@2 ('NuGet' im Designer): Nur Wiederherstellungs- und Pushbefehle
  • DotNetCoreCLI@2 ('.NET Core' im Designer): Nur Wiederherstellen und Nuget-Pushbefehle
  • NpmAuthenticate@0, PipAuthenticate@0 und TwineAuthenticate@0 ("[Typ] Authentifizieren" im Designer): Diese Aufgaben unterstützen Proxys während des Erwerbs von Authentifizierungstoken, aber es ist dennoch erforderlich, alle nachfolgenden Aufgaben/Skripts/Tools so zu konfigurieren, dass auch der Proxy verwendet wird. Anders ausgedrückt, konfigurieren diese Aufgaben nicht den Proxy für das zugrunde liegende Tool (npm, pip, Twine).
  • NuGetToolInstaller@0, NodeTool@0, DotNetCoreInstaller@0 ("[Typ] Installer" im Designer)

Alle Artifacts-Pakettypen in Releases unterstützt

Bisher wurden nur NuGet-Pakete im Azure Artifacts-Artefakttyp in Pipelines-Versionen unterstützt. Mit diesem Update werden alle Azure Artifacts-Pakettypen – Maven, npm und Python – unterstützt.

Artifacts-Ansichten in Releases unterstützt

Zuvor konnte der Artefakttyp "Azure Artifacts" nur ausgelöst werden, wenn neue Paketversionen im Feed veröffentlicht wurden. Jetzt haben wir auch Unterstützung für Ansichten hinzugefügt, sodass Sie Versionen auslösen können, wenn Pakete, die sich bereits im Feed befinden, in eine Ansicht heraufgestuft werden.

Möglichkeit zum Überspringen von kürzlich heruntergeladenen Paketen in Aufbewahrungsrichtlinien

Bisher haben Azure Artifacts-Feeds grundlegende Aufbewahrungsrichtlinien angeboten, die mit dem Löschen alter Paketversionen beginnen würden, wenn eine "maximale Anzahl von Versionen pro Paket" erreicht wurde. Mit diesem Update haben wir die Möglichkeit hinzugefügt, kürzlich heruntergeladene Pakete zu überspringen, wenn dies sauber-up ist. Bearbeiten Sie ihren Feed, und aktivieren Sie das Kontrollkästchen "Zuletzt heruntergeladene Pakete überspringen".

Delegieren der Personen, die Feeds verwalten können

In Azure Artifacts konnten Project Collection Administrators (PCAs) immer alle Feeds auf einem Azure DevOps-Server verwalten. Mit diesem Update können PCAs auch anderen Benutzern und Gruppen diese Möglichkeit geben und somit die Möglichkeit zum Verwalten von Feeds delegieren.

Wiki

Markdown von Vorlagen für Formulare und Videos

Es ist nicht mehr erforderlich, die Markdownsyntax zum Hinzufügen von Formeln, Videos und YAML-Tags beim Bearbeiten eines Wikis zu merken. Sie können nun auf das Kontextmenü auf der Symbolleiste klicken und die Gewünschte Option auswählen.

Screenshot des erweiterten Kontextmenüs mit den folgenden Optionen: Inhaltsverzeichnis, Videos, YAML-Tag und Formeln.

Einbetten von Azure Boards-Abfrageergebnissen in Wiki

Sie können jetzt Azure Boards-Abfrageergebnisse in eine Wiki-Seite in Form einer Tabelle einbetten. Die folgende Abbildung zeigt ein Beispiel einer Wiki-Seite mit einer Liste aller veröffentlichten Features und alle aktiven Fehler im aktuellen Sprint, die in das Wiki eingebettet sind. Der auf der Seite angezeigte Inhalt verwendet eine vorhandene Arbeitsaufgabenabfrage. Mit diesem neuen Feature können Sie dynamische Inhalte erstellen und müssen sich keine Gedanken darüber machen, die Wiki-Seite manuell zu aktualisieren.

Screenshot der eingebetteten Azure Boards-Abfrageergebnisse, die im Wiki angezeigt werden.

Die Abfrageergebnisse können in zwei Schritten hinzugefügt werden:

  1. Klicken Sie auf der Bearbeitungssymbolleiste auf die Schaltfläche "Abfrageergebnisse".

Screenshot des erweiterten Kontextmenüs mit der Option

  1. Wählen Sie die erforderliche Abfrage aus, und klicken Sie auf die Schaltfläche "Einfügen".

Die Ergebnisse der Abfrage können nun in Form einer Tabelle angezeigt werden, nachdem Sie die Seite gespeichert haben.

Screenshot des Dialogfelds

Monospaced font for Wiki Markdown editor

Mit der Einführung von monospaced Fonts für den Wiki Markdown-Editor ist die Lesbarkeit keine Herausforderung mehr. Die Markdown-Quelle sieht sauber und einfach zu lesen aus. Dieses Feature wurde basierend auf diesem Vorschlagsticket priorisiert.

Screenshot des Wiki mit monospaced schriftart.

Bisher sind freigegebene Wiki-Seitenlinks nicht mehr vorhanden, wenn die verknüpfte Seite umbenannt oder verschoben wurde. Wir haben jetzt dauerhafte Links eingeführt, indem wir der URL eine Seiten-IDs hinzufügen. Dadurch wird sichergestellt, dass Links, die Sie freigeben, wieder Standard erhalten bleiben, wenn sich das Wiki im Laufe der Zeit ändert.

Dieses Feature wurde basierend auf diesem Vorschlagsticket priorisiert.

Arbeitsaufgabenstatus auf Wiki-Seiten anzeigen

In diesem Update haben wir die Arbeitsaufgabe Erwähnung auf Wiki-Seiten verbessert, indem wir den Status der Arbeitsaufgabe zur Seite zusammen mit der ID und dem Titel hinzufügen.

Screenshot mit erweiterter Arbeitsaufgabe Erwähnung s.

Arbeitsaufgabenverweise in Pull-Anforderungskommentaren und Diskussionsrunden zeigen auch den Status an.

@mention Benutzer und Gruppen

Sie können jetzt @mention Benutzer und Gruppen auf einer Wiki-Seite verwenden. Dadurch werden Dokumente wie die Kontaktseite eines Teams, Anleitungsdokumente und Wissensdokumente umfangreicher. Die folgende Abbildung zeigt ein Beispiel für eine Sprint-Retrospektive mit Aufgaben und der verantwortlichen Person.

Screenshot, der zeigt, wie es aussieht, wenn Sie <span-Klasse=@Erwähnung Benutzer und Gruppen." />

Darüber hinaus können Sie auch einen Benutzer oder eine Gruppe aus der autouggestion auswählen, indem Sie "@" in die Wiki-Bearbeitungsseite eingeben. Die person, die Erwähnung ed wird auch per E-Mail benachrichtigt.

Screenshot der autouggestions, die angezeigt werden, wenn Sie mit der Eingabe einer <span-Klasse= beginnen@Erwähnung." />

Schließlich können Sie auch auf den @mentioned Benutzer klicken, um die Profilinformationen Karte anzuzeigen. Dieses Feature wurde basierend auf diesem Featurevorschlag priorisiert.

Benachrichtigungen auf Wiki-Seiten

Bis jetzt haben Sie keine Möglichkeit zu wissen, wann der Inhalt auf einer Wiki-Seite geändert wurde. Jetzt können Sie Wiki-Seiten folgen, um per E-Mail benachrichtigt zu werden, wenn die Seite bearbeitet, gelöscht oder umbenannt wird. Um an einem Wiki vorgenommene Änderungen nachzuverfolgen, wählen Sie auf der Wiki-Seite die Schaltfläche "Folgen " aus.

Screenshot einer Azure DevOps-Wiki-Seite mit der Option

Dieses Feature wurde basierend auf diesem Vorschlagsticket priorisiert. Weitere Informationen finden Sie in unserer Dokumentation hier.

Unterstützung für HTML-Tags

Jetzt können Sie umfangreichere Inhalte in Wiki mithilfe von HTML-Tags erstellen. Schauen Sie sich an, was Sie mit HTML-Tags unten tun können.

  1. Sie können jetzt reduzierbare Abschnitte in Ihren Wiki-Seiten erstellen, indem Sie die Details und Zusammenfassungstags verwenden. Sie können das geöffnete Attribut hinzufügen, um die Details standardmäßig erweitert zu lassen.

    Screenshot der reduzierbaren Abschnitte, die mit den Detail- und Zusammenfassungstags erstellt werden.

    Weitere Informationen zum Tag "Details" erhalten Sie hier in der Dokumentation.

    Dies wurde basierend auf diesem Vorschlagsticket priorisiert.

    Hinweis

    Dieses Tag wird in Edge- und Internet Explorer-Browsern nicht unterstützt.

Verbesserungen bei Tabellenerstellung und -bearbeitung

Bisher war das Erstellen und Bearbeiten von Tabellen in einem Wiki schwierig. Wir haben Änderungen vorgenommen, um ihnen das Hinzufügen und Verwalten von Tabellen in Ihrem Wiki zu erleichtern.

  1. Erstellen einer Tabelle aus dem Raster

    Sie müssen sich nicht mehr an die Markdowntabellensyntax erinnern. Jetzt können Sie eine Markdowntabelle ganz einfach erstellen, indem Sie aus einem Raster von 15 X 15 auswählen. Wählen Sie einfach die erforderliche Anzahl von Spalten und Zeilen aus, um eine Tabelle mit nur einem Klick einzufügen.

    Screenshot einer leeren Wiki-Seite mit ausgewählter Option

    Dieses Feature wurde basierend auf den folgenden Vorschlagstickets priorisiert:

  2. Bessere Lesbarkeit von Tabellen

    Sie können jetzt den Zeilenumbruch für Ihren Editor umschalten, um eine bessere Lesbarkeit Ihrer Tabellen zu erhalten. Durch das Deaktivieren des Wortumbruchs wird eine Bildlaufleiste hinzugefügt, mit der Sie den Inhalt großer Tabellen einfacher sehen können.

    Screenshot einer Wiki-Seite mit der Option

  3. Automatisches Formatieren von Markdowntabellen

    Sie müssen keine Leerzeichen mehr hinzufügen, um die Markdownspalten auszurichten. Mit der Schaltfläche "Tabellen formatieren" werden Ihre Markdowntabellen automatisch formatiert, indem Sie den Zellen Leerzeichen hinzufügen, um die Spalten auszurichten. Wenn Sie über große Tabellen verfügen, verwenden Sie sie mit deaktivierter Wörterumbruch , um die Tabellen einfacher zu lesen.

    Screenshot einer Wiki-Seite mit der Option

    Sie können auch die Tastenkombination STRG+UMSCHALT+F verwenden, um Ihre Tabellen zu formatieren.

Reporting

Analyseerweiterung für die Verwendung von Analytics nicht mehr erforderlich

Analytics wird zunehmend zu einem integralen Bestandteil der Azure DevOps-Erfahrung. Es ist eine wichtige Funktion für Kunden, die ihnen dabei helfen, datengesteuerte Entscheidungen zu treffen.

Für Update 1 freuen wir uns, ihnen mitzuteilen, dass Kunden die Analytics-Erweiterung nicht mehr für die Verwendung von Analytics benötigen. Kunden können jetzt Analytics unter project Collection Einstellungen aktivieren. Es ist ein einfacher Prozess, der sich direkt im Produkt befindet.

So können Kunden Analytics aktivieren:

  1. Navigieren Sie zu Project Collection Einstellungen:

Screenshot, der zeigt, wo die Analyseeinstellung zu finden ist.

  1. Klicken Sie auf "Analyse aktivieren".

Screenshot der Option

Das war’s! Analysegestützte Erfahrungen werden für die Sammlung aktiviert.

Neue Sammlungen, die in Update 1- und Azure DevOps Server 2019-Sammlungen erstellt wurden, wobei die für das Upgrade installierte Analytics-Erweiterung standardmäßig aktiviert ist.

Weitere Informationen zu Analytics und den damit ermöglichten Erfahrungen:


Feedback

Wir freuen uns auf Ihr Feedback! Sie können ein Problem melden oder eine Idee bereitstellen und über Entwicklercommunity nachverfolgen und Ratschläge zu Stack Overflow erhalten.


Seitenanfang