Unterstützung für Unterseitentabellen im Wiki

Sie können jetzt Unterseitentabellen zu Ihren Wiki-Seiten hinzufügen, damit Sie den Inhalt und die Links sehen können. In Boards können Sie jetzt Farben zu Swimlane hinzufügen und benutzerdefinierte Felder vor der Bearbeitung sperren. Wir setzen auch unsere Investitionen in Sicherheit fort und haben einen neuen PAT-Bereich für die Verwaltung von Pipelineautorisierungen und -genehmigungen und -überprüfungen hinzugefügt.

Weitere Informationen finden Sie in den Versionshinweisen.

Azure Boards

Azure Pipelines

Wiki

Azure Boards

Verhindern der Bearbeitung freigegebener Auswahllistenfelder

Benutzerdefinierte Felder werden prozessübergreifend gemeinsam verwendet. Dies kann zu einem Problem für Picklistfelder führen, da Prozessadministratoren das Hinzufügen oder Entfernen von Werten aus dem Feld gestatten. Dabei wirken sich die Änderungen auf dieses Feld auf jeden Prozess aus, der es verwendet.

Um dieses Problem zu lösen, haben wir die Möglichkeit für den Sammlungsadministrator hinzugefügt, ein Feld für die Bearbeitung zu "sperren". Wenn das Auswahllistenfeld gesperrt ist, kann der Administrator des lokalen Prozesses die Werte dieser Auswahlliste nicht ändern. Sie können das Feld nur dem Prozess hinzufügen oder daraus entfernen.

Gif to demo editing of shareable picklist fields.

Swimlane-Farben

In Ihrem Kanban-Board können Sie mit Swimlanes die status der Arbeit visualisieren, die verschiedene Servicelevel-Klassen unterstützt. Jetzt können Sie Badelann Farben hinzufügen, um die Identifizierung in Ihrem Board zu erleichtern.

Gif to demo adding color to swimlanes.

Hinweis

Dieses Feature ist nur in der Vorschauversion von New Boards Hubs verfügbar.

Azure Pipelines

Neuer PAT-Bereich für die Verwaltung von Pipelineautorisierungen und -genehmigungen und -überprüfungen

Wir haben einen neuen PAT-Bereich mit dem Namen Pipeline Resourceshinzugefügt, um schäden zu begrenzen, die durch das Verlusten eines PAT-Tokens verursacht werden. Sie können diesen PAT-Bereich verwenden, wenn Sie die Pipelineautorisierung mithilfe einer geschützten Ressource verwalten, z. B. eine Dienstverbindung, oder um Genehmigungen und Überprüfungen für diese Ressource zu verwalten.

Pipelines REST API Updates

Die folgenden REST-API-Aufrufe unterstützen den neuen PAT-Bereich wie folgt:

Verbesserungen bei Pipelineberechtigungen

Wir haben die Verwaltung von Pipelineberechtigungen verbessert, damit das Berechtigungssystem daran erinnert, ob eine Pipeline zuvor eine geschützte Ressource verwendet hat, z. B. eine Dienstverbindung.

Wenn Sie in der Vergangenheit beim Erstellen einer geschützten Ressource "Zugriffsberechtigung für alle Pipelines erteilen" aktiviert haben, dann aber den Zugriff auf die Ressource eingeschränkt haben, benötigte Ihre Pipeline eine neue Autorisierung, um die Ressource zu verwenden. Dieses Verhalten war mit dem nachfolgenden Öffnen und Schließen des Zugriffs auf die Ressource inkonsistent, bei dem keine neue Autorisierung erforderlich war. Dieses Problem wurde nun behoben.

Variablen als Eingaben in Überprüfungen

Genehmigungen und Überprüfungen sind ein Laufzeitsicherheitsmechanismus , mit dem Ressourcenbesitzer steuern können, welche Pipelineausführungen ihre Ressource verwenden können.

Zwei gängige Überprüfungen sind Invoke Azure Function und Invoke REST API. In der Vergangenheit konnte man beim Konfigurieren nur vordefinierte Systemvariablen oder Variablengruppen verwenden.

In diesem Sprint haben wir Unterstützung für pipelinedefinierte Variablen hinzugefügt. Dies funktioniert, wenn Die Parameter , Headers, Bodyund Query für solche Überprüfungen angegeben Function keywerden.

Angenommen, Sie verfügen über die folgende YAML-Pipeline. Beachten Sie, dass variablen FunctionKey, MyBodyMyHeader, und MyQuerysowie eine laufzeitdefinierte Variable namensRetryCount definiert werden.

variables:
  FunctionKey: <<redacted>>
  MyHeader: "FabrikamHeader"
  MyQuery: "FabrikamQuery"
  MyBody: "FabrikamBody"

stages: 
- stage: Build
  jobs:
  - job: SetRC
    steps:
    - script: echo "##vso[task.setvariable variable=RetryCount;isOutput=true]3"
      name: RCValue
- stage: Deploy
  jobs:
  - deployment: 
    environment: Production
    strategy:
      runOnce:
        deploy:
          steps:
          - script: ./deploy.sh

Sie können die Überprüfung Azure-Funktion aufrufen in der Produktionsumgebung konfigurieren und auf , $(MyHeader), $(MyQuery)$(MyBody), und $(Build.SetRC.RCValue.RetryCount)verweisen$(FunctionKey), wie im folgenden Screenshot.

Invoke Azure Function

Die Syntax für die Verwendung von laufzeitdefinierte Variablen lautet StageId.JobId.StepOrTaskName.Variable.

Erfahren Sie mehr über die empfohlene Methode zum Verwenden von Aufrufen von Azure Function & REST-API-Prüfungen.

Möglichkeit zum Deaktivieren der Maskierung für kurze Geheimnisse

Azure Pipelines maskiert Geheimnisse in Protokollen. Geheimnisse können variablen sein, die als Geheimnis markiert sind, Variablen aus Variablengruppen, die mit Azure Key Vault verknüpft sind, oder Elemente einer Dienstverbindung, die vom Dienstverbindungsanbieter als Geheimnis gekennzeichnet sind.

Alle Vorkommen des Geheimniswerts werden maskiert. Das Maskieren kurzer Geheimnisse, z. B. "1", "2", "", "Dev" erleichtert das Erraten ihrer Werte, z. B. in einem Datum: "Jan 3, 202***"
Es ist jetzt klar, dass "3" ein Geheimnis ist. In solchen Fällen ziehen Sie es möglicherweise vor, das Geheimnis nicht vollständig zu maskieren. Wenn es nicht möglich ist, den Wert nicht als Geheimnis zu markieren (z. B. wird der Wert von Key Vault übernommen), können Sie den AZP_IGNORE_SECRETS_SHORTER_THAN Regler auf einen Wert von bis zu 4 festlegen.

Skript zur Selbstüberprüfung der Pipeline-Agent-Version

Derzeit gibt es zwei Versionen des Pipeline-Agents: v2 verwendet .NET 3.1 Core und v3 .NET 6. Wir führen den v3-Agent langsam für unterstützte Betriebssysteme aus, danach wird der v2-Agent eingestellt. Weitere Informationen finden Sie im Blogbeitrag Upgrade des .NET-Agents für Azure Pipelines.

Wir haben ein Skript erstellt, mit dem Sie überprüfen können, ob Ihre selbstgehosteten Agents ein Upgrade durchführen können. Dieses Skript verarbeitet alle Pools in Ihrem organization und identifiziert v2-Agents auf Betriebssystemen, die vom v3-Agent nicht unterstützt werden, z. B. CentOS 6, Fedora-Versionen vor 31, macOS 10.14, RHEL 6.

Hinweis

Aktuelle Builds des v2-Agents versuchen nicht, ein automatisches Upgrade auf den v3-Agent auf einem Betriebssystem durchzuführen, das bekannt ist, dass es nicht mit dem Agent kompatibel ist.

Symbol "Übersicht" für die Pipelineausführung status

In diesem Sprint wird es einfacher, die allgemeine status einer Pipelineausführung zu kennen.

Bei YAML-Pipelines mit vielen Phasen war es früher schwierig, die status einer Pipelineausführung zu kennen, d. h., ob sie noch ausgeführt wird oder abgeschlossen ist. Und wenn der Vorgang abgeschlossen ist, wie lautet der Gesamtzustand: erfolgreich, fehlgeschlagen oder abgebrochen. Dieses Problem wurde behoben, indem sie ein Symbol für die Status-Übersicht hinzugefügt haben.

Pipeline run status overview icon

Wiki

Unterstützung für Unterseitentabellen

Sie können ihren Wiki-Seiten jetzt ein Inhaltsverzeichnis für Unterseiten hinzufügen. Diese Tabelle enthält Links zu allen Unterseiten, die sich unter der Seite befinden, auf der die Tabelle der Unterseiten angezeigt wird.

Sie können die Tabelle der Unterseiten hinzufügen, indem Sie entweder das spezielle Tag [[_TOSP_]] manuell einfügen oder über Weitere Optionen wie in der folgenden animierten Abbildung dargestellt. Nur das erste [[_TOSP_]] -Tag wird verwendet, um die Tabelle der Unterseiten zu erstellen.

Dieses Feature wurde basierend auf den folgenden Communityvorschlagstickets priorisiert:

Nächste Schritte

Hinweis

Diese Features werden in den nächsten zwei bis drei Wochen eingeführt.

Wechseln Sie zu Azure DevOps, und sehen Sie sich an.

Senden von Feedback

Wir würden uns freuen zu hören, was Sie zu diesen Features halten. Verwenden Sie das Hilfemenü, um ein Problem zu melden oder einen Vorschlag bereitzustellen.

Make a suggestion

Sie können auch Ratschläge und Ihre Fragen von der Community in Stack Overflow beantworten lassen.

Vielen Dank,

Rajesh Ramamurthy