/ Azure

Let's Code 22/23: Azure Functions CLI - Debugging + Bereitstellung

In Helmbergers Let's Code Folge 22 und 23 wird ein kleines Azure Functions Projekt mit Hilfe des Tools Azure Functions CLI lokal erzeugt und in Azure bereitgestellt.


Folge 22: Azure Functions CLI - Debugging

Ein Azure Function Projekt kann mit dem CLI lokal initialisiert werden. Azure Functions können dazugefügt werden.
Dieses Tool Azure Function CLI enthält auch die Runtime und damit kann man die Azure Functions nun lokal debuggen.
Es wird auch gezeigt, wie man das generierte JavaScript Projekt in ein TypeScript Projekt wandelt und es möglich ist, im TypeScript Code zu debuggen.

Azure Functions CLI installieren:

npm install -g azure-functions-cli


func init
func new
  TestHttpTriggerFunction

func run TestHttpTriggerFunction -c '{\"name\": \"Franz\"}'

"Global" (im User-Profil) installierte npm Packages auflisten:

npm list -g --depth=0

Azure CLI (nicht mit Azure Function CLI verwechseln! Wird hier nicht benötigt, aber kann man schon mal installieren.)

npm install -g azure-cli

ANMERKUNG vom 17.09.2017:

Das Tool wurde inzwischen umbenannt.
Azure Function CLI -> Azure Functions Core Tools (Das GitHub Repo ist aber gleich geblieben.)

Noch ein Tipp: Beim Aufruf von func run ... wird der Server/der Host in einer eigenen Shell gestartet und leider kommen da häufig Fehler.
Es liegt wohl daran, dass der Port 7071 bereits reserviert ist. Man kann den freigeben, wenn man die PowerShell als Administrator startet und
netsh http delete urlacl url=http://+:7071/ ausführt. (Zum Auflisten: netsh http show urlacl verwenden.) (Tipp stammt von azure-functions-cli/issues/145)

Noch ein praktischer Tipp: Falls man den Host selbst in einer eigenen PowerShell starten will: func host start aufrufen. (Tipp stammt von azure-functions-cli/issues/203)


Folge 23: Azure Functions - Projekt Bereitstellung

Zum Deployen des Azure Funktion Projekts wird im Portal eine Function App angelegt und diese mit einem git Repository versehen. Dieses Repository wird mit dem lokalen Projekt in VS Code (Visual Studio Code) verbunden und kann somit komfortabel aktualisiert werden.

Azure Function CLI bietet Möglichkeiten zum Bereitstellen. Diese werden hier jedoch nicht explizit vorgeführt.
Bereits installierte Function Apps auflisten:

func azure functionapp list

Eine weitere Möglichkeit eine Azure Function App anzulegen, wäre ein Azure Ressource Manager Template zu erzeugen (auf fertige Templates zurückzugreifen, bzw. darauf aufzubauen; siehe unter Links - Azure Quickstart Templates).

Im Video wird die Ressourcengruppe und das nötige Speicherkonto im Azure Portal händisch angelegt und auch die Azure Function App über das Azure Function Portal generiert.

Das Git Repository kann mit folgendem Befehl verbunden werden:

git remote add azure https://testucadmin@hlckeepalive4.scm.azurewebsites.net:443/hlckeepalive4.git

In Visual Studio Code kann man nach einer Codeänderung, den Code committen und durch den Aufruf von sync in Azure bereitstellen.



Weitere Let's Code Artikel und die dazugehörigen Videos im YouTube Channel: Helmbergers Let's Code.