Partilhar via


AzureFunctionApp@1 - tarefa Funções do Azure v1

Atualize uma aplicação de funções com .NET, Python, JavaScript, PowerShell, aplicações Web baseadas em Java.

Implementar uma Função do Azure para Linux ou 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.

Entradas

azureSubscription - Ligação Resource Manager do Azure
string. Obrigatório.

Seleciona a subscrição do Azure Resource Manager para a implementação.


appType - Tipo de aplicação
string. Obrigatório. Valores permitidos: functionApp (Aplicação de Funções no Windows), functionAppLinux (Aplicação de Funções no Linux).


appName - nome da Aplicação Funções do Azure
string. Obrigatório.

Introduz ou seleciona o nome de uma Aplicação Funções do Azure existente. As Aplicações de Funções listadas serão baseadas no tipo de aplicação selecionado.


appName - Nome da aplicação
string. Obrigatório.

Introduz ou seleciona o nome de uma Aplicação Funções do Azure existente. As Aplicações de Funções listadas serão baseadas no tipo de aplicação selecionado.


deployToSlotOrASE - Implementar no Bloco ou Ambiente do Serviço de Aplicações
boolean. Valor predefinido: false.

Implementa num bloco de implementação existente ou num Ambiente de Serviço de Aplicações do Azure. Para ambos os destinos, a tarefa precisa de um nome de Grupo de recursos.

Se o destino de implementação for um bloco, será predefinido para o bloco de produção . Também pode ser fornecido qualquer outro nome de bloco existente.

Se o destino de implementação for um Ambiente Serviço de Aplicações do Azure, deixe o nome do bloco como produção e especifique o nome do Grupo de recursos.


resourceGroupName - Grupo de recursos
string. Necessário quando deployToSlotOrASE = true.

O nome do Grupo de recursos é necessário quando o destino da implementação é um bloco de implementação ou um Ambiente do Serviço de Aplicações.

Introduz ou seleciona o Grupo de recursos do Azure que contém o Serviço de Aplicações do Azure especificado acima.


slotName - Ranhura
string. Necessário quando deployToSlotOrASE = true. Valor predefinido: production.

Introduz ou seleciona um bloco existente, excluindo o bloco Produção.


package - Pacote ou pasta
string. Obrigatório. Valor predefinido: $(System.DefaultWorkingDirectory)/**/*.zip.

O caminho do ficheiro para o pacote ou pasta que contém Serviço de Aplicações conteúdo gerado pelo MSBuild, um ficheiro zip comprimido ou um ficheiro war. As variáveis (Versão de Compilação | ) e os carateres universais são suportados. Por exemplo, $(System.DefaultWorkingDirectory)/**/*.zip or $(System.DefaultWorkingDirectory)/**/*.war.


runtimeStack - Pilha de runtime
string. Opcional. Utilize quando appType = functionAppLinux. Valores permitidos: DOTNET|6.0, , DOTNET-ISOLATED|6.0, DOTNET-ISOLATED|7.0, JAVA|8DOTNET-ISOLATED|8.0, 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.

Especifique a arquitetura e a versão em que a sua aplicação de funções será executada. Pode utilizar qualquer uma das versões de runtime suportadas. Os valores antigos como DOCKER|microsoft/azure-functions-* são preteridos. Os novos valores são listados na lista pendente no assistente de tarefas. Se existir uma versão mais recente de uma arquitetura disponível nas versões de runtime suportadas , pode especificá-la mesmo que não esteja na lista.


runtimeStack - Pilha de runtime
string. Opcional. Utilize quando appType = functionAppLinux. Valores permitidos: 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|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)).

Especifique a arquitetura e a versão em que a sua aplicação de funções será executada. Pode utilizar qualquer uma das versões de runtime suportadas. Os valores antigos como DOCKER|microsoft/azure-functions-* são preteridos. Os novos valores são listados na lista pendente no assistente de tarefas. Se existir uma versão mais recente de uma arquitetura disponível nas versões de runtime suportadas , pode especificá-la mesmo que não esteja na lista.


runtimeStack - Pilha de runtime
string. Opcional. Utilize quando appType = functionAppLinux. Valores permitidos: 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)).

Especifique a arquitetura e a versão em que a sua aplicação de funções será executada. Pode utilizar qualquer uma das versões de runtime suportadas. Os valores antigos como DOCKER|microsoft/azure-functions-* são preteridos. Os novos valores são listados na lista pendente no assistente de tarefas. Se existir uma versão mais recente de uma arquitetura disponível nas versões de runtime suportadas , pode especificá-la mesmo que não esteja na lista.


runtimeStack - Pilha de runtime
string. Opcional. Utilize quando appType = functionAppLinux. Valores permitidos: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0 (.NET), DOCKER|microsoft/azure-functions-node8:2.0 (JavaScript).

Especifique a arquitetura e a versão em que a sua aplicação de funções será executada. Pode utilizar qualquer uma das versões de runtime suportadas. Os valores antigos como DOCKER|microsoft/azure-functions-* são preteridos. Os novos valores são listados na lista pendente no assistente de tarefas. Se existir uma versão mais recente de uma arquitetura disponível nas versões de runtime suportadas , pode especificá-la mesmo que não esteja na lista.


startUpCommand - Comando de arranque
string. Opcional. Utilize quando appType = functionAppLinux.

Introduz o comando de arranque. Por exemplo:

dotnet run
dotnet filename.dll


customWebConfig - Gerar parâmetros de web.config para aplicações Python, Node.js, Go e Java
string. Opcional. Utilize quando appType != functionAppLinux && package NotEndsWith .war.

Será gerado e implementado um Web.config padrão para Serviço de Aplicações do Azure se a aplicação não tiver uma. Os valores no web.config variam com base na arquitetura da aplicação e podem ser editados. Por exemplo, para a aplicação node.js, web.config terá um ficheiro de arranque e iis_node valores do módulo. Esta funcionalidade de edição destina-se apenas ao web.configgerado .


appSettings - Definições da aplicação
string.

Introduza as definições da aplicação com a sintaxe -key value (por exemplo:-RequestTimeout 5000-Port 5000-WEBSITE_TIME_ZONE ). Coloque os valores que contêm espaços entre aspas duplas (por exemplo: "Eastern Standard Time").


configurationStrings - Definições de configuração
string.

Introduza as cadeias de configuração com a sintaxe -key value (por exemplo: -phpVersion 5.6-linuxFxVersion: node|6.11). Coloque os valores que contêm espaços entre aspas duplas.


deploymentMethod - Método de implementação
string. Necessário quando appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Valores permitidos: auto (Deteção automática), zipDeploy (Implementação Zip), runFromPackage (Implementação Zip com Executar a Partir do Pacote). Valor predefinido: auto.

Escolhe o método de implementação da aplicação.


deploymentMethod - Método de implementação
string. Necessário quando appType != functionAppLinux && appType != "" && package NotEndsWith .war && Package NotEndsWith .jar. Valores permitidos: auto (Deteção automática), zipDeploy (Implementação Zip), runFromPackage (Executar a Partir do Pacote). Valor predefinido: auto.

Escolhe o método de implementação da aplicação.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Esta tarefa define as seguintes variáveis de saída, que pode consumir em passos, tarefas e fases a jusante.

AppServiceApplicationUrl
O URL da aplicação do Serviço de Aplicações selecionado.

Observações

Utilize a tarefa Aplicação de Funções do Azure para implementar funções no Azure.

Métodos de implementação

Estão disponíveis vários métodos de implementação nesta tarefa. O valor predefinido é auto.

Para alterar a opção de implementação baseada em pacotes numa tarefa de estruturador, expanda Opções de Implementação Adicionais e ative Selecionar Método de Implementação.

Com base no tipo de Serviço de Aplicações do Azure e agente do Azure Pipelines, a tarefa utiliza uma tecnologia de implementação adequada. As tecnologias de implementação utilizadas pelas tarefas são as seguintes:

Por predefinição, a tarefa tenta selecionar a tecnologia de implementação adequada com base no pacote de entrada, no tipo Serviço de Aplicações e no SO do agente.

  • Se for fornecido um script pós-implementação, utilize a Implementação Zip.
  • Se o tipo de Serviço de Aplicações for Aplicação Web no Linux, utilize a Implementação Zip.
  • Se for fornecido um ficheiro .war, utilize War Deploy.
  • Se for fornecido um ficheiro .jar, utilize Run-From-Zip.
  • Para todas as outras tarefas, utilize Run From Package (via Zip Deploy).

Num agente não Windows (para qualquer tipo de Serviço de Aplicações), a tarefa depende da API REST do Kudu para implementar a aplicação Web.

Kudu REST API

A API REST do Kudu funciona tanto em agentes de automatização do Windows como do Linux quando o destino é uma Aplicação Web no Windows, uma Aplicação Web no Linux (origem incorporada) ou uma aplicação de funções. A tarefa utiliza o Kudu para copiar ficheiros para o Serviço de Aplicações do Azure.

Implementação do Zip

A Implementação zip cria um pacote de implementação .zip a partir do pacote ou pasta escolhido. Em seguida, implementa o conteúdo do ficheiro na pasta wwwroot da aplicação de funções de nome Serviço de Aplicações no Azure. Esta opção substitui todo o conteúdo existente na pasta wwwroot. Para obter mais informações, veja Implementação zip para Funções do Azure.

Executar a partir do Pacote

Executar a Partir do Pacote cria o mesmo pacote de implementação que o Zip Deploy. Em vez de implementar ficheiros na pasta wwwroot, o runtime das Funções monta todo o pacote. Quando utiliza esta opção, os ficheiros na pasta wwwroot tornam-se só de leitura. Para mais informações, veja Executar as suas Funções do Azure a partir de um ficheiro de pacote.

Resolução de problemas

Erro: Não foi possível obter o token de acesso para o Azure. Verifique se o Principal de Serviço utilizado é válido e não expirou.

A tarefa utiliza o principal de serviço na ligação de serviço para autenticar com o Azure. Se o principal de serviço tiver expirado ou não tiver permissões para o Serviço de Aplicações, a tarefa falhará com este erro. Verifique a validade do principal de serviço utilizado e se este está presente no registo da aplicação. Para obter mais informações, veja Utilizar o controlo de acesso baseado em funções para gerir o acesso aos recursos da subscrição do Azure. Esta publicação de blogue também contém mais informações sobre a utilização da autenticação do principal de serviço.

Erro SSL

Se quiser utilizar um certificado no Serviço de Aplicações, o certificado tem de ser assinado por uma autoridade de certificação fidedigna. Se a sua aplicação Web der erros de validação do certificado, é provável que esteja a utilizar um certificado autoassinado. Defina uma variável com o nome VSTS_ARM_REST_IGNORE_SSL_ERRORS para o valor true no pipeline de compilação ou versão para resolver o erro.

Uma versão fica pendente durante muito tempo e falha

Este problema pode ser o resultado de uma capacidade insuficiente no seu plano de Serviço de Aplicações. Para resolver este problema, pode aumentar verticalmente a instância Serviço de Aplicações para aumentar a CPU, a RAM e o espaço em disco disponíveis ou experimentar com um plano de Serviço de Aplicações diferente.

Códigos de erro 5xx

Se estiver a ver um erro de 5xx , verifique o estado do serviço do Azure.

De repente, a Função do Azure deixou de funcionar

Funções do Azure poderá deixar de funcionar se tiver passado mais de um ano desde a última implementação. Se implementar com "RunFromPackage" em "deploymentMethod", é gerada uma SAS com uma data de expiração de 1 ano e definida como o valor de "WEBSITE_RUN_FROM_PACKAGE" na configuração da aplicação. Funções do Azure utiliza esta SAS para referenciar o ficheiro de pacote para execução de funções, pelo que, se a SAS tiver expirado, a função não será executada. Para resolver este problema, implemente novamente para gerar uma SAS com uma data de expiração de um ano.

Erro: Nenhum pacote encontrado com o padrão especificado

Verifique se o pacote mencionado na tarefa se encontra publicado como um artefacto na compilação ou numa fase anterior e transferido na tarefa atual.

Erro: a opção Publicar com a implementação zip não é suportada para o tipo de pacote msBuild

Os pacotes Web criados através da tarefa MSBuild (com argumentos predefinidos) têm uma estrutura de pasta aninhada que só pode ser implementada corretamente pela Implementação Web. A opção de implementação publish-to-zip não pode ser utilizada para implementar esses pacotes. Para converter a estrutura de embalagem, siga estes passos:

  1. Na tarefa Criar solução, altere os Argumentos msBuild para /p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent":

    Captura de ecrã que mostra os valores da Solução de compilação.

  2. Adicione uma tarefa Arquivar e altere os valores da seguinte forma:

    1. Altere a pasta ou ficheiro raiz para arquivar para$(System.DefaultWorkingDirectory)\\WebAppContent.

    2. Desmarque a caixa de verificação Nome da pasta raiz de Prepend para arquivar caminhos :

      Captura de ecrã que mostra os valores de Arquivo.

A implementação da aplicação de funções no Windows é bem-sucedida, mas a aplicação não funciona

Este problema pode ocorrer se um ficheiro web.config não estiver presente na sua aplicação. Pode adicionar um ficheiro web.config à sua origem ou gerar automaticamente um através das Definições de Aplicação e Configuração da tarefa.

  1. Selecione a tarefa e aceda a Gerar parâmetros de web.config para aplicações Python, Node.js, Go e Java:

    Captura de ecrã que mostra a secção Gerar parâmetros de web.config.

  2. Selecione o botão Mais (...) em Gerar parâmetros web.config para aplicações Python, Node.js, Go e Java para editar os parâmetros:

    Captura de ecrã que mostra os parâmetros Gerar web.config.

  3. Selecione o tipo de aplicação na lista Arquitetura de aplicações .

  4. Selecione OK. Ao fazê-lo, irá preencher os parâmetros de web.config necessários para gerar o ficheiro web.config.

FAQs

Como devo configurar a minha ligação de serviço?

Esta tarefa requer uma ligação de serviço do Azure Resource Manager.

Como devo configurar a implementação de tarefas Web com o Application Insights?

Quando estiver a implementar num Serviço de Aplicações, se tiver o Application Insights configurado e tiver ativado Remove additional files at destinationo , também tem de ativar Exclude files from the App_Data folder. Ativar esta opção mantém a extensão do Application Insights num estado seguro. Este passo é necessário porque o WebJob contínuo do Application Insights está instalado na pasta App_Data.

Como devo configurar o meu agente se estiver atrás de um proxy enquanto estou a implementar no Serviço de Aplicações?

Se o agente autoalojado necessitar de um proxy Web, pode informar o agente sobre o proxy durante a configuração. Fazê-lo permite que o agente se ligue aos Pipelines do Azure ou Azure DevOps Server através do proxy. Saiba mais sobre como executar um agente autoalojado atrás de um proxy Web.

Não consigo implementar num Ambiente do Serviço de Aplicações interno com uma ligação de serviço do Azure Resource Manager e um agente alojado na Microsoft

Por predefinição, um agente alojado na Microsoft não funcionará com um Ambiente do Serviço de Aplicações. Em vez disso, tem de configurar um agente privado numa máquina virtual que esteja na mesma rede virtual que a Ambiente do Serviço de Aplicações. Além disso, defina uma zona DNS privada para ativar a comunicação entre os recursos.

Exemplos

Eis um fragmento YAML de exemplo que implementa funções do Azure no 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

Para implementar uma função no Linux, adicione o parâmetro e defina-o appType como appType: functionAppLinux. Se não especificar um valor, functionApp é a predefinição.

Para especificar explicitamente o método de implementação como Zip Deploy, adicione o parâmetro deploymentMethod: zipDeploy. Outro valor suportado para este parâmetro é runFromPackage. Se não especificar um valor, auto é a predefinição.

Para obter instruções que mostram como criar um pipeline ci/CD, veja Criar e implementar Java para Funções do Azure.

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente 2.104.1 ou superior
Categoria da tarefa Implementação