Exercício – Implementar uma função no Azure

Concluído

Agora que você aprendeu como criar e implantar funções no Azure, é hora de colocar a teoria em prática.

Neste exercício, você aprenderá a configurar sua função para implantação no Azure Functions. Em seguida, você usa o Maven para implantar sua função e testá-la na nuvem.

Configurar o projeto de função para implementação

Há algumas alterações que precisam ser feitas em seu aplicativo de função antes que ele possa ser implantado no Azure. As etapas a seguir orientam você na atualização do projeto para implantação.

  1. Determine a região do seu grupo de recursos do sandbox:

    1. Use o nome do grupo de recursos que foi criado automaticamente para você quando ativou a área restrita para recuperar a região onde o grupo de recursos está localizado:

      az group show --name "<rgn>[sandbox resource group name]</rgn>" | jq -r '.location'
      
    2. Copie o nome da região exibida para uso nas etapas a seguir.

  2. Edite o ficheiro pom.xml para atualizar as definições:

    1. No Azure Cloud Shell, altere a pasta raiz da aplicação. Por exemplo:

      cd ~/event-reporting
      
    2. Abra o pom.xml no editor de código do Cloud Shell.

      code pom.xml
      
    3. Localize o seguinte ID do artefacto:

      <artifactId>azure-functions-maven-plugin</artifactId>
      
    4. Na secção <configuration> seguinte, localize o elemento <resourceGroup> e atualize-o com o nome do grupo de recursos. Por exemplo:

      <resourceGroup><rgn>[sandbox resource group name]</rgn></resourceGroup>
      
    5. Localize o elemento <region> e atualize-o com o nome da região onde o grupo de recursos está localizado. Por exemplo:

      <region>westus</region>
      
    6. Prima Ctrl+S para guardar o ficheiro pom.xml e, em seguida, prima Ctrl+Q para fechar o editor de código.

Implementar a Função do Azure

Agora que sua função está configurada para implantação, sua próxima etapa é implantá-la no Azure Functions.

  1. No Azure Cloud Shell, altere a pasta raiz da aplicação. Por exemplo:

    cd ~/event-reporting
    
  2. Utilize o seguinte comando para compilar e implementá-la nas Funções do Azure:

    mvn clean package azure-functions:deploy
    

    O Maven exibe um status de execução da implantação. Por exemplo:

    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------------------------------------------------------------
    [INFO] Building Azure Java Functions 1.0-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO]
    [INFO] --- azure-functions-maven-plugin:1.4.1:deploy (default-cli) @ event-reporting ---
    [INFO] Auth Type : AZURE_CLI
    [INFO] Subscription : Concierge Subscription(12345678-1234-1234-1234-123456789abc)
    [INFO] The specified function app does not exist. Creating a new function app...
    [INFO] Set function worker runtime to java.
    [INFO] Successfully created the function app: event-reporting-20240125192009873.
    [INFO] Trying to deploy the function app...
    [INFO] Trying to deploy artifact to event-reporting-20240125192009873...
    [INFO] Successfully deployed the artifact to https://event-reporting-20240125192009873.azurewebsites.net
    [INFO] Deployment done, you may access your resource through event-reporting-20240125192009873.azurewebsites.net
    [INFO] Syncing triggers and fetching function information
    [INFO] Querying triggers...
    [INFO] HTTP Trigger Urls:
    [INFO]   HttpExample : https://event-reporting-20240125192009873.azurewebsites.net/api/httpexample
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  01:01 min
    [INFO] Finished at: 2024-01-25T20:12:04Z
    [INFO] ------------------------------------------------------------------------
    

Recuperar o URL da Função do Azure com o portal

Lembre-se de que, no exercício que você concluiu em uma unidade anterior, você foi obrigado a criar a URL para testar sua função em um navegador da web. No entanto, há um método mais fácil para recuperar a URL para sua Função do Azure usando o portal do Azure. Para isso, utilize os seguintes passos.

  1. Inicie sessão no portal do Azure com a mesma conta que utilizou para ativar o sandbox.

  2. Selecione Todos os recursos no menu esquerdo.

  3. Selecione seu aplicativo de função na lista de recursos; Para este exercício, o nome do aplicativo de função começa com Relatório de Eventos. Por exemplo:

    event-reporting-20240125192009873
    

    Esse function app nome é o mesmo que foi relatado na resposta de implantação anteriormente neste exercício.

  4. Na página Visão geral do seu aplicativo de função, na guia Funções, selecione sua função HttpExample. Isso mostra a página Visão geral da sua função.

  5. Na parte superior da página da função, selecione Obter URL da função. Copie o URL totalmente construído da sua função. Por exemplo:

    https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
    

    Use esse URL na próxima seção deste exercício.

Testar a Função do Azure no portal

Agora que você implantou sua função no Azure, tudo o que é necessário para testar sua função em um navegador da Web é acrescentar uma cadeia de caracteres de consulta ao final da URL, como fez em exercícios anteriores.

  1. Construa o URL da API da função:

    1. Recupere o URL que copiou na secção Recuperar o URL da Função do Azure com o portal deste exercício; por exemplo:

      https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
      
    2. Anexe uma cadeia de consulta que transmita um nome ao URL da API; por exemplo:

      https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample?name=Bob
      
    3. Copie este URL totalmente construído para utilizar nos passos seguintes.

  2. Abra um novo separador no browser e cole o URL totalmente construído dos passos anteriores no campo de endereços.

  3. Quando você instrui seu navegador da Web a solicitar a URL, você verá uma mensagem de texto sem formatação retornada ao navegador da Web que é personalizada para o nome que você passou na cadeia de caracteres de consulta. Por exemplo:

    Hello, Bob
    

Parabéns, você implantou e testou com sucesso sua função no Azure!