rbac scope no label

Azure Naming Tool v2 – Installation über GitHub

cropped Andreas Hartig 003Veröffentlicht von

Microsoft hat in ihrem Cloud Adoption Framework auf GitHub das Azure Naming Tool in der Version 2 integriert.

Dieses Werkzeug erlaubt einfach und schnell für neue Objekte in Azure die ursprünglich festgelegte Namenskonvention einzuhalten.

Die Installation ist nichts für Azure / GitHub / Visual Studio Anfänger und man sollte die Basics schon können und verstanden haben.

Wir installieren von den 5 möglichen Optionen heute die Standalone Variante für die schnellstmögliche Nutzung. Dafür empfiehlt sich die Azure Web App using GitHub Action.

Als Voraussetzung benötigt ihr eine Azure Umgebung mit entsprechenden Rechten (wir gehen hier von Global Admin und einer Visual Studio Umgebung aus) und einen GitHub Account.

Wir müssen einen Fork vom Cloud Adoption Framework Repository erstellen.

Dazu öffnen wir das “Root” vom CloudAdoptionFramework Repository und clicken oben links auf “Fork”.

CloudAdoptionFramework Repository  Github

Die Webseite die sich öffnet, sollte dann wie folgt aussehen:

Create a Fork

Im nächsten Schritt clickt man auf den grünen <>Code Button und dann auf den .github/workflows Ordner. Beides sieht man auf dem folgenden Screenshot.

My CloudAdoptionFramework Repository

Nun clickt ihr auf den  .deploy-azure-naming-tool-to-azure-webapps-dotnet-core.yml link.

Die Dokumentation von Microsoft verweist nun auf das anlegen der ASP.NET Web App in Azure und dafür sind viele weitere Schritte notwendig. Als erstes benötigt ihr einen Azure Account mit aktive Subscription, das installierte Visual Studio Code und die Azure Tools. Installiert beide Programme mit den Standard Einstellungen. Die Links findet ihr als Hyperlink hinter den beiden Begriffen hier oder in der offiziellen Dokumentation.

Sollte bei euch die Installation der Azure Tools auch nicht aus dem Browser klappen, dann öffnet das Visual Studio Code, drückt shit+ctrl+x und es öffnet sich der Marketplace für Erweiterung. Dort nach Azure Tools suchen und diese installieren.

Visual Studio Code Darstellung

Meldet euch gleich noch in im Visual Studio Code in eurem Azure Account an, damit die folgenden Schritte klappen.

Getting Started with Azure in VS Code

Installiert euch nun noch das .NET 6.0 SDK

Legt euch nun in der gewünschten Region eine Resource Gruppe in eurer Azure Subscription an.

Create an Azure Resource Group

Ich benutze bevorzugt West Europe und nicht die Regionen in Deutschland, da die neuen Technologien dort immer als erstes verfügbar sind.

Nun öffnet ihr im Visual Studio das Terminal über CTRL+SHIFT+Ö und gebt dort mkdir “Azure_Naming_Tool_v2” oder den Namen eurer Wahl ein und dann code Azure_Naming_Tool_v2. Bei der Frage nach dem Trust, müsst ihr “Yes, I trust the authors” angeben.

create directory in cmd

Es öffnet sich nun ein neues Fenster vom Vsiual Studio Code.

Open new in Visual Studio Code

Führt nun folgende Befehle in dem Terminal des neuen Visual Studio Fensters aus:

dotnet new webapp -f net6.0

dotnet run –urls=https://localhost:5001/

Öffnet ihr diese Webseite nun im Browser auf eurem lokalen PC, sollte es so aussehen:

Welcome Screen for Azure Naming Tool

Öffnet nun im Visual Studio euren Azure View über SHIFT+ALT+A und clickt dort mit rechts auf die “App Services” und Create New App Service (Advanced)

Azure Create New Web App

Vergebt den gewünschten Namen, also z.B. AzureNamingToolv2

Azure Create New Web App Step 1

Wählt nun die vorher angelegte Resource Gruppe Azure_Naming_Tool_v2 aus

Azure Create New Web App Step 2

Wählt nun .Net 6, Windows, die gewünschte Region (West Europe), erstellt einen neuen Service Plan für den Free Tier aus und benennt eure neue WebApp.

Azure Create New Web App Step 3
Azure Create New Web App Step 4
Azure Create New Web App Step 5
Azure Create New Web App Step 6
Azure Create New Web App Step 7
Azure Create New Web App Step 8

Beim letzten Schritt wählt ihr “Skip for now”, da wir kein Monitoring benötigen.

Azure Create New Web App Step 9

Sofort wird dann eine WebApp in eurer Subscription angelegt. Den Fortschritt seht ihr unten im Azure:Activity Log

Azure Create New Web App Summary

Wählt dann deploy als Option unten rechts und dann bestätigt das Fenster “Alway deploy the workspace” mit yes bestätigen.

Azure Deployment of WebApp

Im Azure Portal solltet ihr nun dies hier sehen:

Azure All Resources

Öffnet nun die Web App / App Service und landet euch von der “Overview” Seite das Publish Profile” herunter.

Azure Naming Tool Resource View

In der azurr Web App geht ihr nun ins Authentifizierungs Blade und konfiguriert den Identity Provider.

Configure Identity Provider Step 1
Configure Identity Provider Step 2

Nun musst ihr die Azure Web App Credentials anlegen, dazu braucht es ein längeres command, was ihr am besten über die Azure Cloud Shell ausführt.

Configure Identity Provider Step 3

az ad sp create-for-rbac –name “[YOUR CREDENTIAL NAME]” –role contributor –scopes /subscriptions/[YOUR SUBSCRIPTION ID]/resourceGroups/[YOUR RESORUCE GROUP NAME] –sdk-auth

Die Ausgabe solltet ähnlich wie folgt aussehen und diese müsst ihr inclusive der Klammerzeichen abspeichern.

{
  "clientId": "[YOUR CLIENT ID]",
  "clientSecret": "[YOUR CLIENT SECRET]",
  "subscriptionId": "[YOUR SUBSCRIPTION ID]",
  "tenantId": "[YOUR TENANT ID]",
  "activeDirectoryEndpointUrl": "https://login.microsoftonline.com",
  "resourceManagerEndpointUrl": "https://management.azure.com/",
  "activeDirectoryGraphResourceId": "https://graph.windows.net/",
  "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/",
  "galleryEndpointUrl": "https://gallery.azure.com/",
  "managementEndpointUrl": "https://management.core.windows.net/"
}

Nun geht ihr wieder zurück ins Github und legt die 3 notwendigen Secrets an. Dazu wieder den eigenen “Fork” öffnen und über Settings – Secrets – Actions – New Repository Secret, die 3 Secrets anlegen:

AZURE_CREDENTIALS = Dies ist die Ausgabe der Kommandozeile, die wir im vorherigen Schritt ausgeführt haben und beinhaltet alles von { bis }

AZURE_WEBAPP_NAME = Der Name eurer WebApp im Azure Portal

AZURE_WEBAPP_PUBLISH_PROFILE: Dies ist der Inhalt der Datei aus dem Download im Azure Portal “Get publish profile”

Wenn ihr dies eingetragen habt, dann geht ihr im GitHub noch ins Actions Menü und wählt den Workflow in dem CloudAdoptionFramework Fork aus und clickt auf Run Workflow.

Github Fork
Github Fork #2

Kommentar hinterlassen