Condividi tramite


Configurare la distribuzione continua da un repository di Azure DevOps usando l'Azure CLI

Questo script di esempio crea un'app nel servizio app con le risorse correlate e quindi configura la distribuzione continua da un repository Azure DevOps.

Prerequisiti

  • Una sottoscrizione di Azure. Se non si ha un account Azure, creare un account gratuito prima di iniziare.

  • Un repository di Azure DevOps con il codice dell'applicazione, su cui si dispone delle autorizzazioni amministrative.

  • Token di accesso personale (PAT) per l'organizzazione di Azure DevOps.

Script di esempio

Avviare Azure Cloud Shell

Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Per aprire Cloud Shell, basta selezionare Prova nell'angolo superiore destro di un blocco di codice. È anche possibile avviare Cloud Shell in una scheda separata del browser visitando https://shell.azure.com.

Quando si apre Cloud Shell, verificare che sia selezionato Bash per l'ambiente. Le sessioni successive useranno l'interfaccia della riga di comando di Azure in un ambiente Bash. Selezionare Copia per copiare i blocchi di codice, incollarli in Cloud Shell e premere INVIO per eseguirli.

Accedere ad Azure

Cloud Shell viene autenticato automaticamente con l'account iniziale con cui è stato eseguito l'accesso. Usare lo script seguente per accedere usando una sottoscrizione diversa, sostituendo subscriptionId con l'ID sottoscrizione di Azure.

Se non si ha un account Azure, creare un account gratuito prima di iniziare.

subscription="subscriptionId" # Set Azure subscription ID here

az account set -s $subscription # ...or use 'az login'

Per altre informazioni, vedere Impostare una sottoscrizione attiva o accedere in modo interattivo.

Creare l'app Web

Usare i comandi seguenti per creare l'app Web.

# Create an App Service app with continuous deployment from an Azure DevOps repository
# set -e # exit if error
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-app-service-rg-$randomIdentifier"
tag="deploy-vsts-continuous-webapp-only.sh"
appServicePlan="msdocs-app-service-plan-$randomIdentifier"
webapp="msdocs-web-app-$randomIdentifier"

# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag

# Create an App Service plan in `FREE` tier
echo "Creating $appServicePlan"
az appservice plan create --name $appServicePlan --resource-group $resourceGroup --sku FREE

# Create a web app.
echo "Creating $webapp"
az webapp create --name $webapp --resource-group $resourceGroup --plan $appServicePlan

# Copy the result of the following command into a browser to see the static HTML site.
site="http://$webapp.azurewebsites.net"
echo $site
curl "$site"

Configurare la distribuzione continua da Azure DevOps

Creare le variabili seguenti contenenti informazioni da Azure DevOps Services (in precedenza Visual Studio Team Services o VSTS).

gitrepo=<Replace with your Azure DevOps Services repo URL>
token=<Replace with an Azure DevOps Services personal access token>

Configurare la distribuzione continua da Azure DevOps Services. Il --git-token parametro è obbligatorio una sola volta per ogni account Azure; Azure memorizza il token.

az webapp deployment source config --name $webapp --resource-group $resourceGroup \
--repo-url $gitrepo --branch main --git-token $token

Pulire le risorse

Usare il seguente comando per rimuovere il gruppo di risorse e tutte le risorse associate usando il comando az group delete, a meno che non si abbia una necessità continua di queste risorse. La creazione e l'eliminazione di alcune di queste risorse può richiedere tempo.

az group delete --name $resourceGroup

Informazioni di riferimento per l'esempio

Questo script usa i comandi seguenti. Ogni comando della tabella include collegamenti alla documentazione specifica del comando.

Comando Note
az group create Consente di creare un gruppo di risorse in cui sono archiviate tutte le risorse.
az appservice plan create Consente di creare un piano di servizio app.
az webapp create Consente di creare un'app del servizio app.
az webapp deployment source config Consente di associare un'app del servizio app a un repository GIT o Mercurial.