Getty Images
Mit Azure Pipelines Bereitstellungen optimieren
IT-Teams können Arbeitsabläufe optimieren, die Sicherheit erhöhen und die Erfahrung der Entwickler verbessern, wenn sie die folgenden Best Practices für Azure Pipelines kennen.
Die Beherrschung der dynamischen Fähigkeiten von Azure DevOps und Azure Pipelines ist ein nützliches Unterfangen für moderne Softwareentwickler und IT-Experten.
Azure Pipelines deckt eine Reihe potenzieller Anwendungsfälle ab, wie beispielsweise das Release-Management und die Verfolgung von Projektmeilensteinen. Teams, die sich die Zeit nehmen, Azure Pipelines zu beherrschen, reduzieren die Anzahl fehlerhafter Releases, verwalten sensible Informationen angemessen und verbessern die Entwicklungserfahrung.
Sehen wir uns einige Best Practices und Funktionen von Azure Pipelines an, die bei der Konfiguration von Pipelines zu berücksichtigen sind.
Erst prüfen und genehmigen, dann bereitstellen
Peer-Reviews und Genehmigungen sind für die Gewährleistung der Qualität und Sicherheit eines Projekts im Verlauf des Entwicklungszyklus von entscheidender Bedeutung. Es ist möglich, mehrere Pipelines innerhalb eines Projekts zu verwenden. Teams sollten jedoch Peer-Reviews und Genehmigungen durchführen, bevor ein Projekt in die Produktion überführt wird. Probleme entstehen durch eine unzureichende Überwachung.
Um die Azure-Pipelines-Funktion zu aktivieren, folgen Sie diesen kurzen Schritten.
Schritt 1
Öffnen Sie ein Projekt in Azure DevOps und gehen Sie zu Projekteinstellungen/Repositories/Einstellungen. Klicken Sie dann auf die drei Punkte auf der rechten Seite und wählen Sie Genehmigungen und Prüfungen.
Schritt 2
Wählen Sie Genehmiger aus dem Suchfeld aus. Unter Advanced (Erweitert) sollten Sie die Option Allow approvers to approve their own runs (Genehmigung eigener Läufe) deaktivieren. Eine Ausnahme gilt für Nicht-Produktionspipelines, so dass Entwicklungs- und QA-Läufe durchgeführt werden können, ohne dass jede Pipeline-Bereitstellung genehmigt werden muss.
Schritt 3
Sobald Sie die Genehmigungen ausgewählt haben, klicken Sie auf Erstellen. Sie verfügen nun über einen Genehmigungsprozess für die Pipeline.
Bei der Konfiguration der Genehmiger für die Pipeline-Bereitstellung ist es sinnvoll, eine Gruppe anstelle von direkten Zuweisungen zu verwenden – Gruppen sind sicherer. Außerdem ist es von Vorteil, mindestens zwei Genehmigende zu haben, damit ein Genehmigender einspringen kann, wenn der andere nicht verfügbar ist. Sofern Sie die Standardeinstellung nicht ändern, verfallen Genehmigungen nach 30 Tagen.
Vorlagen und IAC für die Pipeline-Bereitstellung verwenden
Eine hilfreiche Best Practice ist die Verwendung von Azure-Vorlagen, die über Azure Pipelines bereitgestellt werden können. Vorlagen sind Infrastruktur as Code (IaC), die wiederverwendbare und definierte Parameter für Versionskontrolle, Sicherheit und Compliance bieten. Sie bieten eine intelligente Möglichkeit zur Bereitstellung von Pipelines, insbesondere in großen Umgebungen, da Benutzer Code ohne Konfigurationsabweichungen bereitstellen und erneut bereitstellen können. Mithilfe von Vorlagen können Teams außerdem Tools erstellen, die Konsistenz und vom Unternehmen genehmigte Arbeitsweisen erzwingen.
Eine weitere Strategie besteht darin, mit Azure Pipelines einen Snapshot zu erstellen, der jeden Tag eine Aufzeichnung des Projekts liefert. Auch wenn Snapshots übertrieben erscheinen mögen, setzen sie Designprozesse durch und verhindern, dass Personen Rechte im Portal vergeben müssen. Benutzer erstellen Vorlagen und Snapshots, indem sie Schritte, Auslöser und Verhaltensweisen in einer YAML-Pipeline-Konfiguration definieren.
Azure Pipelines sicher einsetzen
Schließlich sollten Sie auch die Sicherheit berücksichtigen. Aus der Sicherheitsperspektive ist es nicht immer ideal, Variablen in Pipelines zu verwenden. Wenn jeder, der die Pipeline bearbeitet, Passwörter sehen kann, wird die Sicherheit anfälliger.
Azure bietet eine Möglichkeit, Variablen für Kennwörter, Benutzer-IDs und andere sensible Informationen zu schützen. Eine Variante besteht darin, eine geheime Variable zu deklarieren und diese einer Variablen zuzuordnen, die bei der Ausführung der Pipeline verwendet wird. Es ist nicht möglich, den aufgezeichneten Wert wiederherzustellen, also stellen Sie sicher, dass Sie ihn an einem sicheren Ort aufbewahren.
Alternativ können Sie Azure Key Vault verwenden und den Pipeline-Variablen ein Key-Vault-Geheimnis zuweisen. So funktionieren die meisten groß angelegten Bereitstellungen, da das Rotieren von Passwörtern zeitaufwendig wird.