Megosztás a következőn keresztül:


AzureFunctionApp@1 – Azure Functions v1-feladat

Függvényalkalmazás frissítése .NET-, Python-, JavaScript-, PowerShell-, Java-alapú webalkalmazásokkal.

Azure-függvény üzembe helyezése Linux vagy Windows rendszeren.

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.

Bevitelek

azureSubscription - Azure Resource Manager-kapcsolat
string. Kötelező.

Kiválasztja az üzembe helyezéshez tartozó Azure Resource Manager-előfizetést.


appType - Alkalmazás típusa
string. Kötelező. Engedélyezett értékek: functionApp (Függvényalkalmazás Windows rendszeren) functionAppLinux (Függvényalkalmazás Linux rendszeren).


appName - Azure Functions alkalmazás neve
string. Kötelező.

Egy meglévő Azure Functions alkalmazás nevét adja meg vagy választja ki. A felsorolt függvényalkalmazások a kiválasztott alkalmazástípuson alapulnak.


appName - Alkalmazás neve
string. Kötelező.

Egy meglévő Azure Functions alkalmazás nevét adja meg vagy választja ki. A felsorolt függvényalkalmazások a kiválasztott alkalmazástípuson alapulnak.


deployToSlotOrASE - Üzembe helyezés pontban vagy App Service Environment
boolean. Alapértelmezett érték: false.

Üzembe helyezés egy meglévő üzembehelyezési ponton vagy Azure App Service-környezetben. Mindkét cél esetében a tevékenységnek erőforráscsoport-névre van szüksége.

Ha az üzembehelyezési célhely egy pont, akkor az alapértelmezés szerint az éles tárolóhelyre kerül. Bármely más meglévő pontnév is megadható.

Ha az üzembehelyezési cél egy Azure App Service környezet, hagyja a tárolóhely nevét éles környezetben, és adja meg az Erőforráscsoport nevét.


resourceGroupName - Erőforráscsoport
string. Akkor szükséges, ha deployToSlotOrASE = true.

Az erőforráscsoport nevére akkor van szükség, ha az üzembehelyezési cél üzembehelyezési pont vagy App Service Environment.

Megadja vagy kiválasztja a fent megadott Azure App Service tartalmazó Azure-erőforráscsoportot.


slotName - Slot
string. Akkor szükséges, ha deployToSlotOrASE = true. Alapértelmezett érték: production.

Beír vagy kiválaszt egy meglévő tárolóhelyet, az éles pont kivételével.


package - Csomag vagy mappa
string. Kötelező. Alapértelmezett érték: $(System.DefaultWorkingDirectory)/**/*.zip.

Az MSBuild által létrehozott App Service tartalmat, tömörített zip-fájlt vagy háborús fájlt tartalmazó csomag vagy mappa elérési útja. A változók (buildkiadás | ) és a helyettesítő karakterek támogatottak. Például: $(System.DefaultWorkingDirectory)/**/*.zip or $(System.DefaultWorkingDirectory)/**/*.war.


runtimeStack - Futtatókörnyezeti verem
string. Választható. Használja a következőt: appType = functionAppLinux. Engedélyezett értékek: 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.8PYTHON|3.10PYTHON|3.9PYTHON|3.11.

Adja meg azt a keretrendszert és verziót, amelyen a függvényalkalmazás futni fog. A támogatott futtatókörnyezeti verziók bármelyikét használhatja. A régi értékek, például DOCKER|microsoft/azure-functions-* elavultak. Az új értékek a tevékenység segéd legördülő listájában jelennek meg. Ha a támogatott futtatókörnyezeti verziókban elérhető egy keretrendszer újabb verziója, akkor is megadhatja, ha az nem szerepel a listában.


runtimeStack - Futtatókörnyezeti verem
string. Választható. Használja a következőt: appType = functionAppLinux. Engedélyezett értékek: 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 (functionapp 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)).

Adja meg azt a keretrendszert és verziót, amelyen a függvényalkalmazás futni fog. A támogatott futtatókörnyezeti verziók bármelyikét használhatja. A régi értékek, például DOCKER|microsoft/azure-functions-* elavultak. Az új értékek a tevékenység segéd legördülő listájában jelennek meg. Ha a támogatott futtatókörnyezeti verziókban elérhető egy keretrendszer újabb verziója, akkor is megadhatja, ha az nem szerepel a listában.


runtimeStack - Futtatókörnyezeti verem
string. Választható. Használja a következőt: appType = functionAppLinux. Engedélyezett értékek: 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 (functionapp 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)).

Adja meg azt a keretrendszert és verziót, amelyen a függvényalkalmazás futni fog. A támogatott futtatókörnyezeti verziók bármelyikét használhatja. A régi értékek, például DOCKER|microsoft/azure-functions-* elavultak. Az új értékek a tevékenység segéd legördülő listájában jelennek meg. Ha a támogatott futtatókörnyezeti verziókban elérhető egy keretrendszer újabb verziója, akkor is megadhatja, ha az nem szerepel a listában.


runtimeStack - Futtatókörnyezeti verem
string. Választható. Használja a következőt: appType = functionAppLinux. Engedélyezett értékek: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0 (.NET), DOCKER|microsoft/azure-functions-node8:2.0 (JavaScript).

Adja meg azt a keretrendszert és verziót, amelyen a függvényalkalmazás futni fog. A támogatott futtatókörnyezeti verziók bármelyikét használhatja. A régi értékek, például DOCKER|microsoft/azure-functions-* elavultak. Az új értékek a tevékenység segéd legördülő listájában jelennek meg. Ha a támogatott futtatókörnyezeti verziókban elérhető egy keretrendszer újabb verziója, akkor is megadhatja, ha az nem szerepel a listában.


startUpCommand - Indítási parancs
string. Választható. Használja a következőt: appType = functionAppLinux.

Beírja az indítási parancsot. Például:

dotnet run
dotnet filename.dll


customWebConfig - web.config paraméterek létrehozása Python-, Node.js-, Go- és Java-alkalmazásokhoz
string. Választható. Használja a következőt: appType != functionAppLinux && package NotEndsWith .war.

A rendszer létrehoz és üzembe helyez egy standard Web.config Azure App Service, ha az alkalmazás nem rendelkezik ilyenrel. A web.config értékei az alkalmazás-keretrendszertől függően változnak, és szerkeszthetők. Az node.js alkalmazás esetében például web.config egy indítási fájllal és iis_node modulértékekkel fog rendelkezni. Ez a szerkesztési funkció csak a létrehozott web.configvonatkozik.


appSettings - Alkalmazásbeállítások
string.

Adja meg az alkalmazásbeállításokat a szintaxissal -key value (például:-RequestTimeout 5000-Port 5000-WEBSITE_TIME_ZONE ). A szóközöket tartalmazó értékeket dupla idézőjelek közé foglalja (például: "Eastern Standard Time").


configurationStrings - Konfigurációs beállítások
string.

Adja meg a konfigurációs sztringeket a szintaxissal -key value (például: -phpVersion 5.6-linuxFxVersion: node|6.11). A szóközöket tartalmazó értékeket dupla idézőjelekbe foglalja.


deploymentMethod - Üzembehelyezési módszer
string. Akkor szükséges, ha appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Engedélyezett értékek: auto (automatikus észlelés), zipDeploy (Zip Deploy), runFromPackage (Zip Deploy a futtatásból csomagból). Alapértelmezett érték: auto.

Kiválasztja az alkalmazás üzembehelyezési módját .


deploymentMethod - Üzembehelyezési módszer
string. Akkor szükséges, ha appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Engedélyezett értékek: auto (Automatikus észlelés), zipDeploy (Zip Deploy), runFromPackage (Futtatás csomagból). Alapértelmezett érték: auto.

Kiválasztja az alkalmazás üzembehelyezési módját .


Feladatvezérlési lehetőségek

Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.

Kimeneti változók

Ez a feladat a következő kimeneti változókat határozza meg, amelyeket az alsóbb rétegbeli lépésekben, feladatokban és szakaszokban használhat fel.

AppServiceApplicationUrl
A kijelölt App Service alkalmazás URL-címe.

Megjegyzések

Az Azure-függvényalkalmazás feladatával függvényeket helyezhet üzembe az Azure-ban.

Üzembehelyezési módszerek

Ebben a feladatban számos üzembe helyezési módszer érhető el. Az alapértelmezett érték auto.

Ha módosítani szeretné a csomagalapú üzembe helyezési beállítást egy tervezői feladatban, bontsa ki a További üzembehelyezési beállítások elemet, és engedélyezze a Telepítési módszer kiválasztása lehetőséget.

A Azure App Service és az Azure Pipelines-ügynök típusától függően a feladat egy megfelelő üzembehelyezési technológiát használ. A feladatok által használt üzembehelyezési technológiák a következők:

Alapértelmezés szerint a feladat megpróbálja kiválasztani a megfelelő üzembehelyezési technológiát a bemeneti csomag, a App Service típusa és az ügynök operációs rendszere alapján.

  • Ha az üzembe helyezés utáni szkript meg van adva, használja a Zip Deploy parancsot.
  • Ha a App Service típusa Web App linuxos, használja a Zip Deploy parancsot.
  • Ha .war-fájl van megadva, használja a War Deploy parancsot.
  • Ha .jar fájl van megadva, használja a Run-From-Zip parancsot.
  • Minden más feladathoz használja a Futtatás csomagból parancsot (Zip Deploy használatával).

Nem Windows-ügynök esetén (bármilyen App Service típus esetén) a feladat a Kudu REST API-ra támaszkodik a webalkalmazás üzembe helyezéséhez.

Kudu REST API

A Kudu REST API Windows- és Linux-automatizálási ügynökökön is működik, ha a cél egy Windows-alapú webalkalmazás, egy Linux-alapú webalkalmazás (beépített forrás) vagy egy függvényalkalmazás. A feladat a Kudu használatával másolja a fájlokat a Azure App Service.

Tömörített üzembe helyezés

A Zip Deploy létrehoz egy .zip üzembehelyezési csomagot a kiválasztott csomagból vagy mappából. Ezután telepíti a fájl tartalmát a App Service névfüggvényalkalmazás wwwroot mappájába az Azure-ban. Ez a beállítás felülírja a wwwroot mappa összes meglévő tartalmát. További információ: Zip-alapú üzembe helyezés Azure Functions.

Futtatás csomagból

A Futtatás csomagból parancs ugyanazt az üzembehelyezési csomagot hozza létre, mint a Zip Deploy. Ahelyett, hogy fájlokat helyezna üzembe a wwwroot mappában, a Functions-futtatókörnyezet csatlakoztatja a teljes csomagot. Ha ezt a beállítást használja, a wwwroot mappában lévő fájlok írásvédetté válnak. További információért lásd az Azure Functions csomagfájlból történő futtatásával foglalkozó cikket.

Hibaelhárítás

Hiba: Nem sikerült lekérni az Azure hozzáférési jogkivonatát. Ellenőrizze, hogy a használt szolgáltatásnév érvényes-e, és nem járt-e le.

A feladat a szolgáltatáskapcsolat szolgáltatásnevét használja az Azure-ral való hitelesítéshez. Ha a szolgáltatásnév lejárt vagy nem rendelkezik engedélyekkel a App Service, a feladat ezzel a hibával meghiúsul. Ellenőrizze a használt szolgáltatásnév érvényességét, és hogy szerepel-e az alkalmazás regisztrációjában. További információért lásd: Az Azure-előfizetések erőforrásaihoz való hozzáférés kezelése szerepköralapú hozzáférés-vezérléssel. Ez a blogbejegyzés további információkat is tartalmaz a szolgáltatásnév-hitelesítés használatáról.

SSL-hiba

Ha tanúsítványt szeretne használni App Service, a tanúsítványt egy megbízható hitelesítésszolgáltatónak kell aláírnia. Ha a webalkalmazás tanúsítvány-ellenőrzési hibákat ad vissza, valószínűleg önaláírt tanúsítványt használ. A hiba megoldásához állítson be egy nevű VSTS_ARM_REST_IGNORE_SSL_ERRORS változót a buildelési vagy kiadási folyamat értékére true .

Egy kiadás hosszú ideig nem válaszon, majd meghiúsul

Ez a probléma a App Service csomag kapacitásának elégtelensége lehet. A probléma megoldásához vertikálisan felskálázhatja a App Service-példányt, hogy növelje a rendelkezésre álló processzor-, RAM- és lemezterületet, vagy próbálkozzon egy másik App Service csomaggal.

5xx hibakódok

Ha 5xx hiba jelenik meg, ellenőrizze az Azure-szolgáltatás állapotát.

Az Azure-függvény hirtelen leállt

Azure Functions hirtelen leállhat, ha az utolsó üzembe helyezés óta több mint egy év telt el. Ha a "DeploymentMethod" paraméterben a "RunFromPackage" paraméterrel végez üzembe helyezést, a rendszer létrehoz egy 1 éves lejárati dátummal rendelkező SAS-t, és az alkalmazáskonfigurációban a "WEBSITE_RUN_FROM_PACKAGE" értékként van beállítva. Azure Functions ezt az SAS-t használja a csomagfájlra való hivatkozáshoz a függvény végrehajtásához, így ha az SAS lejárt, a függvény nem lesz végrehajtva. A probléma megoldásához helyezze üzembe újra az üzembe helyezést, hogy létrehoz egy SAS-t egyéves lejárati dátummal.

Hiba: A megadott mintával nem található csomag

Ellenőrizze, hogy a feladatban említett csomag közzé van-e téve összetevőként a buildben vagy egy korábbi fázisban, és le van-e töltve az aktuális feladatban.

Hiba: Az msBuild csomagtípus esetében a közzététel zip-telepítéssel nem támogatott

Az MSBuild feladattal létrehozott (alapértelmezett argumentumokkal rendelkező) webcsomagok beágyazott mappastruktúrával rendelkeznek, amelyet csak a Web Deploy helyezhet üzembe megfelelően. A közzététel a zip-ben történő üzembe helyezési lehetőséggel nem telepíthetők ezek a csomagok. A csomagolási struktúra átalakításához hajtsa végre az alábbi lépéseket:

  1. A Megoldás összeállítása feladatban módosítsa az MSBuild argumentumokat a következőre /p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent":

    Képernyőkép a Megoldás összeállítása értékekről.

  2. Adjon hozzá egy archiválási feladatot, és módosítsa az értékeket az alábbiak szerint:

    1. Módosítsa a gyökérmappát vagy fájlt archiválásra a értékre $(System.DefaultWorkingDirectory)\\WebAppContent.

    2. Törölje a jelet az Előtag gyökérmappa neve az elérési utak archiválásához jelölőnégyzetből:

      Képernyőkép az Archív értékekről.

A függvényalkalmazás üzembe helyezése Windows rendszeren sikeres, de az alkalmazás nem működik

Ez a probléma akkor fordulhat elő, ha nincs web.config fájl az alkalmazásban. Hozzáadhat egy web.config fájlt a forráshoz, vagy automatikusan létrehozhat egyet a feladat alkalmazás- és konfigurációs beállításaival .

  1. Válassza ki a feladatot, és lépjen a Python-, Node.js-, Go- és Java-alkalmazások web.config paramétereinek létrehozása területre:

    Képernyőkép a web.config paraméterek generálása szakaszról.

  2. A paraméterek szerkesztéséhez válassza az Egyebek gombot (...) a Python-, Node.js-, Go- és Java-alkalmazások web.config paramétereinek létrehozása területen:

    Képernyőkép a web.config létrehozása paraméterekről.

  3. Válassza ki az alkalmazástípust az Alkalmazás-keretrendszer listában.

  4. Válassza az OK lehetőséget. Ezzel feltölti a web.config-fájl létrehozásához szükséges web.config paramétereket.

Gyakori kérdések

Hogyan konfigurálhatom a szolgáltatáskapcsolatot?

Ehhez a feladathoz Azure Resource Manager szolgáltatáskapcsolatra van szükség.

Hogyan konfigurálhatom a webes feladatok üzembe helyezését az Application Insights használatával?

Ha egy App Service helyez üzembe, és az Application Insights konfigurálva van, és engedélyezte az szolgáltatástRemove additional files at destination, akkor azt is engedélyeznie Exclude files from the App_Data folderkell. Ennek a beállításnak az engedélyezése biztonságos állapotban tartja az Application Insights-bővítményt. Erre a lépésre azért van szükség, mert az Application Insights folyamatos WebJobs-feladat telepítve van a App_Data mappába.

Hogyan konfigurálhatom az ügynököt, ha proxy mögött van, miközben App Service üzembe helyezem?

Ha a saját üzemeltetésű ügynökhöz webproxy szükséges, a konfiguráció során tájékoztathatja az ügynököt a proxyról. Ezzel lehetővé teszi az ügynök számára, hogy a proxyn keresztül csatlakozzon az Azure Pipelineshoz vagy Azure DevOps Server. További információ a saját üzemeltetésű ügynök webproxy mögötti futtatásáról.

Nem tudok üzembe helyezni egy belső App Service Environment Egy Azure Resource Manager szolgáltatáskapcsolat és egy Microsoft által üzemeltetett ügynök használatával

A Microsoft által üzemeltetett ügynök nem fog működni App Service Environment. Ehelyett konfigurálnia kell egy privát ügynököt egy olyan virtuális gépen, amely ugyanabban a virtuális hálózatban található, mint a App Service Environment. Emellett állítson be egy privát DNS-zónát az erőforrások közötti kommunikáció engedélyezéséhez.

Példák

Íme egy minta YAML-kódrészlet, amely Azure-függvényeket helyez üzembe Windows rendszeren:


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

Ha linuxos függvényt szeretne üzembe helyezni, adja hozzá a appType paramétert, és állítsa be a következőre: appType: functionAppLinux. Ha nem ad meg értéket, functionApp az az alapértelmezett érték.

Ha explicit módon szeretné megadni az üzembe helyezési módszert Zip Deploy néven, adja hozzá a paramétert deploymentMethod: zipDeploy. A paraméter egy másik támogatott értéke a következő runFromPackage: . Ha nem ad meg értéket, auto az az alapértelmezett érték.

A CI/CD-folyamatok létrehozását bemutató útmutatóért lásd: Java létrehozása és üzembe helyezése Azure Functions.

Követelmények

Követelmény Leírás
Folyamattípusok YAML, klasszikus build, klasszikus kiadás
Futtatás: Ügynök, DeploymentGroup
Igények None
Képességek Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek.
Parancskorlátozások Bármelyik
Változók beállítása Bármelyik
Ügynök verziója 2.104.1 vagy újabb
Feladatkategória Üzembe helyezés