Le site extension delle Web App di Azure sono, per l'appunto, componenti aggiuntivi che consentono di estendere la funzionalità di un'applicazione web. Queste estensioni possono essere utilizzate per vari scopi, come l'aggiunta di strumenti di gestione o di monitoraggio, l'implementazione di nuove funzionalità o l'aggiunta di supporto per nuovi linguaggi di programmazione (per esempio, il supporto in preview agli SDK di .NET). Le estensioni sono installabili direttamente dal portale di Azure o, meglio, tramite le API Kudu.
Per noi è particolarmente importante che ci siano delle API per installare le estensioni, perché ci permette di automatizzare il processo di installazione delle estensioni stesse. In particolare, ci permette di installare le estensioni in fase di rilascio, in modo da avere un processo di rilascio completamente automatizzato. Vediamone un esempio:
IFS=',' read -ra extension_array <<< "${{ parameters.extensionNames }}" for extension in "${extension_array[@]}"; do if [ -n "$extension" ]; then url="/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Web/sites/<site>/siteExtensions/$extension?api-version=2023-01-01" echo "Installing extension $extension..." az rest --method put --uri $url --body "{\"id\": \"$extension\"}" fi done
In questo esempio abbiamo dato per assodato che le estensioni arrivino già scritte all'interno di un parametro chiamato extensionNames, dove le estensioni possono essere una o più, separate da virgola. Di fatto, andiamo a scorrere tutto l'elenco delle estensioni che si vuole installare e si fa una semplice chiamata API sfruttando la CLI di Azure (che prevede il fatto che siamo già autenticati). Se l'estensione di riferimento è già installata, verrà eventualmente aggiornata.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Creare una custom property in GitHub
Managed deployment strategy in Azure DevOps
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
Utilizzare WhenEach per processare i risultati di una lista di task
Utilizzare QuickGrid di Blazor con Entity Framework
Generare la software bill of material (SBOM) in GitHub
Utilizzare una qualunque lista per i parametri di tipo params in C#
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Eseguire script pre e post esecuzione di un workflow di GitHub