AzureFunctionApp@1 – Azure Functions v1-uppgift
Uppdatera en funktionsapp med .NET, Python, JavaScript, PowerShell, Java-baserade webbprogram.
Distribuera en Azure-funktion för Linux eller Windows.
Syntax
# Azure Functions Deploy v1
# Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. Azure Functions App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOTNET|6.0' | 'DOTNET-ISOLATED|6.0' | 'DOTNET-ISOLATED|7.0' | 'DOTNET-ISOLATED|8.0' | 'JAVA|8' | 'JAVA|11' | 'JAVA|17' | 'JAVA|21' | 'NODE|14' | 'NODE|16' | 'NODE|18' | 'NODE|20' | 'PYTHON|3.8' | 'PYTHON|3.9' | 'PYTHON|3.10' | 'PYTHON|3.11'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
# Azure Functions Deploy v1
# Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. Azure Functions App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'DOTNET|6.0' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'NODE|16' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8' | 'PYTHON|3.9'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
# Azure Functions Deploy v1
# Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. Azure Functions App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
# Azure Functions Deploy v1
# Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
# Azure Functions Deploy v1
# Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
# Azure Functions Deploy v1
# Deploy an Azure Function for Linux or Windows.
- task: AzureFunctionApp@1
inputs:
azureSubscription: # string. Required. Azure Resource Manager connection.
appType: # 'functionApp' | 'functionAppLinux'. Required. App type.
appName: # string. Required. App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#runtimeStack: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when appType = functionAppLinux. Runtime stack.
#startUpCommand: # string. Optional. Use when appType = functionAppLinux. Startup command.
# Application and Configuration Settings
#customWebConfig: # string. Optional. Use when appType != functionAppLinux && package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Additional Deployment Options
#deploymentMethod: 'auto' # 'auto' | 'zipDeploy' | 'runFromPackage'. Required when appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: auto.
Ingångar
azureSubscription
-
Azure Resource Manager-anslutning
string
. Krävs.
Väljer Azure Resource Manager-prenumerationen för distributionen.
appType
-
apptyp
string
. Krävs. Tillåtna värden: functionApp
(funktionsapp i Windows), functionAppLinux
(funktionsapp i Linux).
appName
-
Azure Functions Appnamn
string
. Krävs.
Anger eller väljer namnet på en befintlig Azure Functions-app. Funktionsapparna i listan baseras på den valda apptypen.
appName
-
Appnamn
string
. Krävs.
Anger eller väljer namnet på en befintlig Azure Functions-app. Funktionsapparna i listan baseras på den valda apptypen.
deployToSlotOrASE
-
Distribuera till fack eller App Service Environment
boolean
. Standardvärde: false
.
Distribuerar till ett befintligt distributionsfack eller Azure App Service Environment. För båda målen behöver aktiviteten ett resursgruppsnamn.
Om distributionsmålet är ett fack kommer det som standard att vara produktionsplatsen plats. Alla andra befintliga facknamn kan också anges.
Om distributionsmålet är en Azure App Service-miljö lämnar du platsnamnet som produktion och anger namnet på resursgruppen.
resourceGroupName
-
resursgrupp
string
. Krävs när deployToSlotOrASE = true
.
Resursgruppens namn krävs när distributionsmålet antingen är ett distributionsfack eller en App Service-miljö.
Anger eller väljer den Azure-resursgrupp som innehåller Azure App Service som anges ovan.
slotName
-
fack
string
. Krävs när deployToSlotOrASE = true
. Standardvärde: production
.
Anger eller väljer ett befintligt fack, exklusive produktionsplatsen.
package
-
paket eller mapp
string
. Krävs. Standardvärde: $(System.DefaultWorkingDirectory)/**/*.zip
.
Filsökvägen till paketet eller mappen som innehåller App Service-innehåll som genererats av MSBuild, en komprimerad zip-fil eller en krigsfil. Variabler ( Build | Release) och jokertecken stöds. Till exempel $(System.DefaultWorkingDirectory)/**/*.zip or $(System.DefaultWorkingDirectory)/**/*.war
.
runtimeStack
-
Körningsstacken
string
. Valfri. Använd när appType = functionAppLinux
. Tillåtna värden: DOTNET|6.0
, DOTNET-ISOLATED|6.0
, DOTNET-ISOLATED|7.0
, DOTNET-ISOLATED|8.0
, JAVA|8
, JAVA|11
, JAVA|17
, JAVA|21
, NODE|14
, NODE|16
, NODE|18
, NODE|20
, PYTHON|3.8
, PYTHON|3.9
, PYTHON|3.10
, PYTHON|3.11
.
Ange det ramverk och den version som funktionsappen ska köras på. Du kan använda någon av de körningsversioner som stöds. Gamla värden som DOCKER|microsoft/azure-functions-*
är inaktuella. Nya värden visas i listrutan i aktivitetsassistenten. Om det finns en nyare version av ett ramverk som är tillgängligt i körningsversioner som stöds kan du ange det även om det inte finns i listan.
runtimeStack
-
Körningsstacken
string
. Valfri. Använd när appType = functionAppLinux
. Tillåtna värden: DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp v3)), DOTNET|6.0
(DOTNET|6.0 (functionapp v4)), JAVA|8
(JAVA|8 (functionapp v2/v3/v4)), JAVA|11
(JAVA|11 (funktionsapp v3/v4)), NODE|8
(NODE|8 (functionapp v2)), NODE|10
(NODE|10 (functionapp v2/v3)), NODE|12
(NODE|12 (functionapp v3)), NODE|14
(NODE|14 (functionapp v3/v4)), NODE|16
(NODE|16 (functionapp v4)), PYTHON|3.6
(PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7
(PYTHON|3.7 (functionapp v2/v3/v4)), PYTHON|3.8
(PYTHON|3.8 (functionapp v3/v4)), PYTHON|3.9
(PYTHON|3.9 (functionapp v3/v4)).
Ange det ramverk och den version som funktionsappen ska köras på. Du kan använda någon av de körningsversioner som stöds. Gamla värden som DOCKER|microsoft/azure-functions-*
är inaktuella. Nya värden visas i listrutan i aktivitetsassistenten. Om det finns en nyare version av ett ramverk som är tillgängligt i körningsversioner som stöds kan du ange det även om det inte finns i listan.
runtimeStack
-
Körningsstacken
string
. Valfri. Använd när appType = functionAppLinux
. Tillåtna värden: DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp v3)), JAVA|8
(JAVA|8 (functionapp v2/v3)), JAVA|11
(JAVA|11 (funktionsapp v3)), NODE|8
(NODE|8 (functionapp v2)), NODE|10
(NODE|10 (functionapp v2/v3)), NODE|12
(NODE|12 (functionapp v3)), NODE|14
(NODE|14 (functionapp v3)), PYTHON|3.6
(PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7
(PYTHON|3.7 (functionapp v2/v3)), PYTHON|3.8
(PYTHON|3.8 (functionapp v3)).
Ange det ramverk och den version som funktionsappen ska köras på. Du kan använda någon av de körningsversioner som stöds. Gamla värden som DOCKER|microsoft/azure-functions-*
är inaktuella. Nya värden visas i listrutan i aktivitetsassistenten. Om det finns en nyare version av ett ramverk som är tillgängligt i körningsversioner som stöds kan du ange det även om det inte finns i listan.
runtimeStack
-
Körningsstacken
string
. Valfri. Använd när appType = functionAppLinux
. Tillåtna värden: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0
(.NET), DOCKER|microsoft/azure-functions-node8:2.0
(JavaScript).
Ange det ramverk och den version som funktionsappen ska köras på. Du kan använda någon av de körningsversioner som stöds. Gamla värden som DOCKER|microsoft/azure-functions-*
är inaktuella. Nya värden visas i listrutan i aktivitetsassistenten. Om det finns en nyare version av ett ramverk som är tillgängligt i körningsversioner som stöds kan du ange det även om det inte finns i listan.
startUpCommand
-
Startkommando
string
. Valfri. Använd när appType = functionAppLinux
.
Anger startkommandot. Till exempel:
dotnet run
dotnet filename.dll
customWebConfig
-
Generera web.config parametrar för Python, Node.js, Go och Java-appar
string
. Valfri. Använd när appType != functionAppLinux && package NotEndsWith .war
.
En standard Web.config genereras och distribueras till Azure App Service om programmet inte har någon. Värdena i web.config varierar beroende på programramverket och de kan redigeras. För node.js-programmet har web.config till exempel en startfil och iis_node modulvärden. Den här redigeringsfunktionen gäller endast för som genereras web.config.
appSettings
-
Appinställningar
string
.
Ange programinställningarna med hjälp av syntaxen -key value
(till exempel: -Port 5000
-RequestTimeout 5000
-WEBSITE_TIME_ZONE
). Omslut värden som innehåller blanksteg med dubbla citattecken (till exempel: "Eastern Standard Time"
).
Mer information om appinställningar finns i Miljövariabler och appinställningar i Azure App Service.
configurationStrings
-
Konfigurationsinställningar
string
.
Ange konfigurationssträngarna med hjälp av syntaxen -key value
(till exempel: -phpVersion 5.6
-linuxFxVersion: node|6.11
). Omslut värden som innehåller blanksteg med dubbla citattecken.
deploymentMethod
-
Distributionsmetod
string
. Krävs när appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar
. Tillåtna värden: auto
(identifiera automatiskt), zipDeploy
(Zip Deploy), runFromPackage
(Zip Deploy with Run From Package). Standardvärde: auto
.
Väljer distributionsmetod för appen.
deploymentMethod
-
Distributionsmetod
string
. Krävs när appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar
. Tillåtna värden: auto
(identifiera automatiskt), zipDeploy
(Zip Deploy), runFromPackage
(Kör från paket). Standardvärde: auto
.
Väljer distributionsmetod för appen.
Alternativ för aktivitetskontroll
Alla aktiviteter har kontrollalternativ utöver sina uppgiftsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Den här uppgiften definierar följande utdatavariabler, som du kan använda i underordnade steg, jobb och steg.
AppServiceApplicationUrl
Program-URL:en för den valda App Service.
Anmärkningar
Använd azure-funktionsappen för att distribuera funktioner till Azure.
Distributionsmetoder
Det finns flera distributionsmetoder i den här uppgiften. Standardvärdet är auto
.
Om du vill ändra det paketbaserade distributionsalternativet i en designeraktivitet expanderar du Ytterligare distributionsalternativ och aktiverar Välj distributionsmetod.
Baserat på typen av Azure App Service- och Azure Pipelines-agent använder uppgiften en lämplig distributionsteknik. De distributionstekniker som används av uppgifter är följande:
Som standard försöker uppgiften välja lämplig distributionsteknik baserat på indatapaketet, App Service-typen och agentoperativsystemet.
- Om du har angett ett skript efter distributionen använder du Zip Deploy.
- Om App Service-typen är webbapp i Linux använder du Zip Deploy.
- Om en .war-fil tillhandahålls använder du War Deploy.
- Om en .jar fil tillhandahålls använder du Run-From-Zip.
- Använd Kör från-paket (via Zip Deploy) för alla andra uppgifter.
På en icke-Windows-agent (för alla App Service-typer) förlitar sig uppgiften på Kudu REST API- för att distribuera webbappen.
Kudu REST API
Kudu REST API- fungerar på både Windows- och Linux-automationsagenter när målet är en webbapp i Windows, en webbapp på Linux (inbyggd källa) eller en funktionsapp. Uppgiften använder Kudu för att kopiera filer till Azure App Service.
Zip-distribution
Zip Deploy skapar ett .zip distributionspaket från det valda paketet eller mappen. Sedan distribueras filinnehållet till mappen wwwroot i apptjänstens namnfunktionsapp i Azure. Det här alternativet skriver över allt befintligt innehåll i mappen wwwroot. Mer information finns i Zip-distribution för Azure Functions.
Kör från paket
Kör från paket skapar samma distributionspaket som Zip Deploy. I stället för att distribuera filer till mappen wwwroot monterar Functions-körningen hela paketet. När du använder det här alternativet blir filer i mappen wwwroot skrivskyddade. Mer information finns i Kör Azure Functions från en paketfil.
Felsökning
Fel: Det gick inte att hämta åtkomsttoken för Azure. Kontrollera om tjänstens huvudnamn som används är giltigt och inte har upphört att gälla.
Uppgiften använder tjänstens huvudnamn i tjänstanslutningen för att autentisera med Azure. Om tjänstens huvudnamn har upphört att gälla eller inte har behörighet till App Service misslyckas uppgiften med det här felet. Kontrollera giltigheten för tjänstens huvudnamn som används och att det finns i appregistreringen. Mer information finns i Använda rollbaserad åtkomstkontroll för att hantera åtkomst till dina Azure-prenumerationsresurser. Det här blogginlägget innehåller även mer information om hur du använder autentisering med tjänstens huvudnamn.
SSL-fel
Om du vill använda ett certifikat i App Service måste certifikatet signeras av en betrodd certifikatutfärdare. Om webbappen ger dig certifikatverifieringsfel använder du förmodligen ett självsignerat certifikat. Ange en variabel med namnet VSTS_ARM_REST_IGNORE_SSL_ERRORS
till värdet true
i bygg- eller versionspipelinen för att lösa felet.
En version låser sig under lång tid och misslyckas sedan
Det här problemet kan bero på otillräcklig kapacitet i Din App Service-plan. För att lösa det här problemet kan du skala upp App Service-instansen för att öka tillgängligt processor-, RAM-minne- och diskutrymme eller prova med en annan App Service-plan.
5xx felkoder
Om du ser felet 5xx kontrollerar statusen för azure-tjänsten.
Azure-funktionen slutade plötsligt fungera
Azure Functions kan plötsligt sluta fungera om mer än ett år har passerat sedan den senaste distributionen. Om du distribuerar med "RunFromPackage" i "deploymentMethod" genereras en SAS med ett förfallodatum på 1 år och anges som värdet "WEBSITE_RUN_FROM_PACKAGE" i programkonfigurationen. Azure Functions använder denna SAS för att referera till paketfilen för funktionskörning, så om SAS har upphört att gälla körs inte funktionen. Lös problemet genom att distribuera igen för att generera en SAS med ett förfallodatum på ett år.
Fel: Inget paket hittades med angivet mönster
Kontrollera om paketet som nämns i uppgiften publiceras som en artefakt i bygget eller i en tidigare fas och laddas ned i det aktuella jobbet.
Fel: Alternativet Publicera med zip-distribution stöds inte för msBuild-pakettypen
Webbpaket som skapats via MSBuild-aktiviteten (med standardargument) har en kapslad mappstruktur som endast kan distribueras korrekt av Web Deploy. Distributionsalternativet publish-to-zip kan inte användas för att distribuera dessa paket. Utför följande steg för att konvertera paketeringsstrukturen:
I uppgiften Skapa lösning ändrar du MSBuild-argumenten till
/p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent"
:Lägg till en arkivaktivitet och ändra värdena enligt följande:
Ändra rotmapp eller fil för att arkivera till
$(System.DefaultWorkingDirectory)\\WebAppContent
.Avmarkera kryssrutan Prepend-rotmappnamn för arkivsökvägar:
Distributionen av funktionsappen i Windows lyckas men appen fungerar inte
Det här problemet kan uppstå om en web.config fil inte finns i din app. Du kan antingen lägga till en web.config fil i källan eller automatiskt generera en med hjälp av program- och konfigurationsinställningar för uppgiften.
Välj uppgiften och gå till Generera web.config parametrar för Python, Node.js, Go och Java-appar:
Välj knappen Mer (...) under Generera web.config parametrar för Python, Node.js, Go- och Java-appar för att redigera parametrarna:
Välj din programtyp i listan Application Framework.
Välj OK. Om du gör det fylls de web.config parametrar som krävs för att generera web.config-filen.
Vanliga frågor och svar
Hur ska jag konfigurera min tjänstanslutning?
Den här uppgiften kräver en Azure Resource Manager-tjänstanslutning.
Hur ska jag konfigurera distribution av webbjobb med Application Insights?
Om du har Application Insights konfigurerats och du har aktiverat Remove additional files at destination
måste du även aktivera Exclude files from the App_Data folder
när du distribuerar till en App Service. Om du aktiverar det här alternativet hålls Application Insights-tillägget i ett säkert tillstånd. Det här steget krävs eftersom Application Insights kontinuerliga webbjobb är installerat i mappen App_Data.
Hur ska jag konfigurera min agent om den finns bakom en proxy när jag distribuerar till App Service?
Om din lokala agent kräver en webbproxy kan du informera agenten om proxyn under konfigurationen. På så sätt kan din agent ansluta till Azure Pipelines eller Azure DevOps Server via proxyn. Läs mer om att köra en lokalt installerad agent bakom en webbproxy.
Jag kan inte distribuera till en intern App Service-miljö med hjälp av en Azure Resource Manager-tjänstanslutning och en Microsoft-värdbaserad agent
En Microsoft-värdbaserad agent fungerar inte med en App Service-miljö. I stället måste du konfigurera en privat agent på en virtuell dator som finns i samma virtuella nätverk som App Service-miljön. Ange också en privat DNS-zon för att aktivera kommunikation mellan resurserna.
Exempel
Här är ett YAML-exempelfragment som distribuerar Azure-funktioner i Windows:
variables:
azureSubscription: Contoso
# To ignore SSL error, uncomment the below variable
# VSTS_ARM_REST_IGNORE_SSL_ERRORS: true
steps:
- task: AzureFunctionApp@1
displayName: Azure Function App Deploy
inputs:
azureSubscription: $(azureSubscription)
appName: samplefunctionapp
appType: functionApp
package: $(System.DefaultWorkingDirectory)/**/*.zip
Om du vill distribuera en funktion i Linux lägger du till parametern appType
och ställer in den på appType: functionAppLinux
. Om du inte anger något värde är functionApp
standardvärdet.
Om du uttryckligen vill ange distributionsmetoden som Zip Deploy lägger du till parametern deploymentMethod: zipDeploy
. Ett annat värde som stöds för den här parametern är runFromPackage
.
Om du inte anger något värde är auto
standardvärdet.
En genomgång som visar hur du skapar en CI/CD-pipeline finns i Skapa och distribuera Java till Azure Functions.
Krav
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
kräver | Ingen |
funktioner | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Någon |
variabler som kan | Någon |
Agentversion | 2.104.1 eller senare |
Aktivitetskategori | Gruppera |