Guia de Início rápido: implantar do Cloud Source Repositories no Cloud Functions

Neste tópico, descrevemos como implantar o Cloud Functions usando códigos que têm controle de versão no Cloud Source Repositories.

Ao integrar o Cloud Functions com o Cloud Source Repositories, é possível usar o Repositories para ter controle de versão do código que contém sua função. À medida que a função muda ao longo do tempo, é possível continuar acessando as confirmações anteriores para ver como e quando ela foi alterada.

Antes de começar

  1. Conclua as etapas do Guia de início rápido: criar um repositório.
  2. Ative a API Cloud Functions.
  3. Ativar a API Cloud Functions

Adicionar uma função ao repositório

  1. Na máquina local, acesse o diretório raiz do repositório hello-world:

    cd hello-world
    
  2. No seu sistema local, crie um diretório para o código de função.

    Linux ou macOS

    Crie o diretório:

    mkdir gcf_hello_world

    Vá para o diretório:

    cd gcf_hello_world

    Windows (CMD)

    Crie o diretório:

    mkdir %HOMEDRIVE%%HOMEPATH%\gcf_hello_world

    Vá para o diretório:

    cd %HOMEDRIVE%%HOMEPATH%\gcf_hello_world
  3. No diretório gcf_hello_world, crie um arquivo index.js com o seguinte conteúdo:

    /* HTTP Cloud Function.
    *
    * @param {Object} req Cloud Function request context.
    * @param {Object} res Cloud Function response context.
    */
    exports.helloGET = (req, res) => {
      res.send('Hello from Cloud Functions and Cloud Source Repositories');
    };
    

    Esta é uma função simples chamada helloGET que responde a solicitações HTTP GET com o texto Hello from Cloud Functions and Cloud Source Repositories.

Enviar arquivos para o Cloud Source Repositories

Envie os arquivos que você acabou de criar para o Cloud Source Repositories.

  1. Adicione os arquivos:

    git add .
    
  2. Confirme os arquivos com um comentário descrevendo o histórico desta ação:

    git commit -m "Add Cloud Functions test to Cloud Source Repositories"
    
  3. Usando o comando git push, adicione o conteúdo do repositório Git local ao Cloud Source Repositories:

    git push origin master
    

Criar e implantar a função

Usando o Console do Google Cloud ou o SDK do Cloud, crie e implante sua função.

Console

  1. Acesse a página Cloud Functions.

    Acessar a página "Cloud Functions"

    Verifique se o projeto do Google Cloud em que você ativou o Cloud Functions está selecionado.

  2. Clique em Criar função.

  3. Na página Criar função, preencha as seguintes opções:

    • No campo Nome, digite cloud-source-repositories-test.
    • Na lista Acionador, selecione HTTP.
    • Na lista Código-fonte, selecione Repositório do Cloud Source.
    • No campo Repositório, digite hello-world.
    • Na lista Ramificação/tag, selecione Ramificação.
    • No campo Nome da ramificação, digite master.
    • No campo Diretório com o código-fonte, digite /gcf_hello_world.
    • No campo Função a ser executada, digite helloGET.
  4. Clique em Criar.

Enquanto a função está sendo implantada, um pequeno controle giratório aparece ao lado dela. Quando a implantação é concluída, o ícone torna-se uma marca de seleção verde.

SDK do Cloud

  1. Em uma janela de terminal, defina uma variável que contenha seu ID de projeto do Google Cloud. Verifique se esse é o mesmo projeto do Google Cloud que contém seu repositório.

    export PROJECT_ID=$(gcloud config list --format 'value(core.project)')
    
  2. Implante a função:

    gcloud functions deploy helloGET \
    --source https://source.developers.google.com/projects/$PROJECT_ID/repos/hello-world/moveable-aliases/master/paths/gcf_hello_world \
    --trigger-http \
    --runtime=nodejs8;
    

Para mais informações sobre como implantar no Cloud Source Repositories, consulte Como implantar do controle de origem.

Testar a função

Usando o Console do GCP ou o SDK do Cloud, teste a nova função.

Console

  1. Acesse a página Visão geral do Cloud Functions.

    Acessar a página "Visão geral"

    Verifique se o projeto do Google Cloud em que você ativou o Cloud Functions está selecionado.

  2. Clique em cloud-source-repositories-test, o nome da função helloGET criada anteriormente.

    A página Detalhes da função é aberta.

  3. Clique na guia Teste.

  4. Clique em Testar a função.

    Depois de um ou dois minutos, o campo Saída é atualizado para exibir a mensagem Hello from Cloud Functions and Cloud Source Repositories.

SDK do Cloud

Em uma janela de terminal, digite o seguinte comando:

gcloud functions call helloGET

Uma saída semelhante à seguinte é exibida:

executionId: owqd9fdh5od2
result: Hello from Cloud Functions and Cloud Source Repositories

Limpar

Para excluir a função e o repositório que você criou, siga estas etapas.

Excluir a função

  1. Acesse a página Visão geral do Cloud Functions.

    Acessar a página "Visão geral"

    Verifique se o projeto do Google Cloud em que você ativou o Cloud Functions está selecionado.

  2. Selecione a função helloGET para este guia de início rápido, cloud-source-repositories-test.

  3. Na mesma linha, clique em Mais e em Excluir.

Excluir o repositório

  1. No Console do GCP, abra a página Todos os repositórios do Cloud Source Repositories.

    Abrir o Cloud Source Repositories

  2. Mantenha o ponteiro do mouse sobre o repositório que você quer excluir e clique em Configurações .

    A página Configurações gerais é aberta.

  3. Clique em Excluir este repositório .

    A caixa de diálogo Remover repositório é aberta.

  4. Digite o nome do repositório que você quer excluir.

  5. Clique em Excluir.

A seguir