GitHub-Aktionen für Azure jetzt allgemein verfügbar

Veröffentlicht am 13 November, 2019

Program Manager

Mithilfe von GitHub-Aktionen können einfache, aber leistungsstarke Workflows erstellt werden, um die Kompilierung und Verteilung von Software über GitHub zu automatisieren. Diese in YAML-Dateien definierten Aktionen ermöglichen das Auslösen automatisierter Workflowprozesse bei beliebigen GitHub-Ereignissen wie z. B. Codecommits, Pull Requests oder neuen GitHub-Releases.

Da GitHub die öffentliche Verfügbarkeit der Aktionen gerade bekannt gegeben hat, können auch wir nun die allgemeine Verfügbarkeit von GitHub-Aktionen für Azure verkünden.

Sie finden alle GitHub-Aktionen für Azure mit den zugehörigen Repositorys auf GitHub. Dort finden Sie auch die Dokumentation und Beispielvorlagen, die das Erstellen, Testen, Packen, Veröffentlichen und Bereitstellen von Workflows in Azure nach einem Push oder Pull Request vereinfachen.

Sie können auch Azure-Startvorlagen verwenden, um GitHub-CI/CD-Workflows für Azure ganz einfach zu erstellen. Mit diesen Workflows können Sie Ihre Apps, die Sie in beliebten Programmiersprachen und Frameworks wie .NET, Node.js, Java, PHP, Ruby oder Python erstellen können, in Containern oder auf beliebigen Betriebssystemen bereitstellen können.

Herstellen einer Verbindung mit Azure

Authentifizieren Sie Ihr Azure-Abonnement mit der Aktion Azure-Anmeldung (azure/login) und einem Dienstprinzipal. Sie können dann Azure CLI-Skripts ausführen, um beliebige Azure-Ressourcen mithilfe der Aktion Azure-Befehlszeilenschnittstelle (azure/cli) zu erstellen und zu verwalten. Mit dieser Aktion wird die GitHub-Aktionsausführungsumgebung mit der neuesten (oder einer vom Benutzer angegebenen) Version der Azure-Befehlszeilenschnittstelle eingerichtet.

Eine Web-App bereitstellen

Azure App Service ist eine verwaltete Plattform zum Bereitstellen und Skalieren von Webanwendungen. Sie können Ihre Web-App ganz einfach in Azure App Service bereitstellen, indem Sie die Aktionen Azure-Web-App (azure/webapps-deploy) und Azure-Web-App für Container (azure/webapps-container-deploy) verwenden. Sie können auch App-Einstellungen und Verbindungszeichenfolgen mithilfe der Aktion Azure App Service-Einstellungen (azure/appservice-settings) konfigurieren.

Erfahren Sie mehr über Azure App Service.

Eine serverlose Funktions-App bereitstellen

Optimieren Sie die Entwicklung serverloser Anwendungen in Azure Functions, einer ereignisgesteuerten serverlosen Computeplattform, indem Sie Ihren Code mit der Aktion Azure Functions (azure/functions-action) oder Ihr benutzerdefiniertes Containerimage mit der Aktion Azure Functions für Container (azure/functions-container-action) übermitteln.

Erfahren Sie mehr über Azure Functions.

Container-Apps erstellen und bereitstellen

Bei Container-Apps (mit einem oder mehreren Containern) verwenden Sie die Aktion Docker-Anmeldung (azure/docker-login), um einen vollständigen Workflow für das Erstellen von Containerimages, das Pushen in eine Containerregistrierung (Docker Hub oder Azure Container Registry) und das anschließende Bereitstellen der Images in einer Azure-Web-App, in Azure Functions für Container oder in Kubernetes einzurichten.

Bereitstellen für Kubernetes

Wir haben mehrere Aktionen veröffentlicht, die Ihnen beim Herstellen einer Verbindung mit einem Kubernetes-Cluster helfen, der lokal oder in einer beliebigen Cloud ausgeführt wird (einschließlich Azure Kubernetes Service). Außerdem können Sie damit für Manifeste ein Baking ausführen und diese bereitstellen, Artefakte ersetzen, den Einführungsstatus überprüfen und Geheimnisse im Cluster verarbeiten.

  • Installer für kubectl-Tools (azure/setup-kubectl): Installiert eine bestimmte Version von kubectl auf dem Runner.
  • Kubernetes-Kontext festlegen (azure/k8s-set-context): Wird zum Festlegen des Zielkontexts des Kubernetes-Clusters verwendet, der von anderen Aktionen verwendet werden oder kubectl-Befehle ausführen kann.
  • AKS-Kontext festlegen (azure/aks-set-context): Wird zum Festlegen des Zielkontexts des Azure Kubernetes Service-Clusters verwendet.
  • Kubernetes-Geheimnis erstellen (azure/k8s-create-secret): Erstellt ein generisches Geheimnis oder ein Docker-Registrierungsgeheimnis im Kubernetes-Cluster.
  • Kubernetes bereitstellen (azure/k8s-deploy): Wird zum Bereitstellen von Manifesten im Kubernetes-Cluster verwendet.
  • Helm einrichten (azure/setup-helm): Installiert eine bestimmte Version der Helm-Binärdatei auf dem Runner.
  • Kubernetes-Baking (azure/k8s-bake): Wird für das Baking der Manifestdatei für die Bereitstellung mit Helm 2, kustomize oder Kompose verwendet.

Wenn Sie einen Cluster in Azure Kubernetes Service (AKS) bereitstellen möchten, können Sie azure/aks-set-context für die Kommunikation mit dem AKS-Cluster verwenden, dann mit azure/k8s-create-secret ein Geheimnis zum Pullen des Images erstellen und schließlich die Manifestdateien mit azure/k8s-deploy bereitstellen.

In Azure SQL- oder MySQL-Datenbanken bereitstellen

Wir verfügen nun über eine Aktion für Azure SQL-Datenbank (azure/sql-action), die für die Authentifizierung eine Verbindungszeichenfolge und für die Bereitstellung in Ihrer Azure SQL-Datenbank-Instanz DACPAC/SQL-Skripts verwendet.

Wenn Sie die Bereitstellung in einer Azure Database for MySQL-Datenbank mithilfe von MySQL-Skripts durchführen möchten, verwenden Sie stattdessen die MySQL-Aktion (azure/mysql-action).

Eine Ausführung in Azure Pipelines auslösen

GitHub-Aktionen vereinfachen das Erstellen, Testen und Bereitstellen Ihres Codes direkt aus GitHub. Sie können sie aber auch dazu verwenden, externe CI/CD-Tools und -Dienste wie Azure Pipelines auszulösen. Wenn Ihr Workflow die Ausführung von Azure Pipelines für die Bereitstellung in einer bestimmten Azure Pipelines-Umgebung erfordert, ermöglicht z. B. die Aktion Azure Pipelines (azure/pipelines) das Auslösen dieser Ausführung als Teil Ihres Aktionsworkflows.

Hilfsprogrammaktionen

Schließlich haben wir auch eine Aktion für variable Ersetzungen Microsoft/variable-substitution veröffentlicht, mit der Sie die Werte in JSON-, XML- oder YAML-Dateien (einschließlich Konfigurationsdateien, Manifesten u. v. m.) innerhalb eines GitHub-Aktionsworkflows parametrisieren können.

In Kürze mehr verfügbar

Wir werden unsere verfügbaren GitHub-Aktionen weiter verbessern und neue veröffentlichen, die weitere Azure-Dienste einbinden.

Probieren Sie GitHub-Aktionen für Azure aus, und teilen Sie uns Ihr Feedback über Twitter unter @Azure mit. Wenn Sie auf ein Problem stoßen, öffnen Sie bitte ein Problem im GitHub-Repository für die jeweilige Aktion.