Tutorial: implantações da função Lambda com CodePipeline - AWS CodePipeline

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tutorial: implantações da função Lambda com CodePipeline

Este tutorial ajuda você a criar uma ação de implantação CodePipeline que implanta seu código na função que você configurou no Lambda. Você criará uma função Lambda de amostra na qual criará um alias e uma versão, adicionará a função Lambda compactada ao local de origem e executará a ação do Lambda em seu pipeline.

nota

Como parte da criação de um pipeline no console, um bucket de artefatos S3 será usado CodePipeline por for artefacts. (Este bucket não é o mesmo utilizado para uma ação de origem do S3.) Se o bucket de artefatos do S3 estiver em uma conta diferente da conta do seu pipeline, certifique-se de que o bucket de artefatos do S3 Contas da AWS seja de propriedade de quem é seguro e confiável.

nota

A ação de Lambda implantação está disponível somente para pipelines do tipo V2.

Pré-requisitos

Para você usar este tutorial para criar seu pipeline de CD, alguns recursos precisam estar em operação. Veja aqui estão os itens que você precisa para começar:

nota

Todos esses recursos devem ser criados na mesma AWS região.

Assim que você atender a esses pré-requisitos, poderá continuar com o tutorial e criar seu pipeline de CD.

Etapa 1: Crie sua função Lambda de amostra

Nesta etapa, você cria a função Lambda na qual implantará.

Como criar sua função do Lambda
  1. Acesse o console do Lambda e siga as etapas do tutorial a seguir para criar uma amostra da função Lambda: link.

  2. Na navegação superior, escolha Criar e selecione Começar do zero na parte superior da página.

  3. Em Nome, insira MyLambdaFunction.

  4. Publique uma nova versão. Essa será a versão para a qual o alias apontará.

    1. Selecione sua função.

    2. Escolha o menu suspenso Ações.

    3. Escolha Publicar nova versão.

    4. (Opcional) Adicione à descrição em Descrição.

    5. Selecione Publish.

  5. Crie um alias para sua função, comoaliasV1.

  6. Verifique se o alias está apontando para a versão que você acabou de criar (como 1).

    nota

    Se você escolher $LATEST, não poderá usar recursos de mudança de tráfego porque o Lambda não oferece suporte a $LATEST para um alias que aponta para mais de uma versão.

Etapa 2: Carregar o arquivo da função no seu repositório

Baixe a função e salve-a como um arquivo zip. Faça upload do arquivo compactado em seu bucket do S3 usando as etapas a seguir.

Para adicionar um arquivo .zip ao repositório de origem
  1. Abra seu bucket S3.

  2. Escolha Carregar.

  3. Faça upload do arquivo zip que contém seu sample_lambda_source.zip arquivo para o bucket de origem.

    Anote o caminho.

    object key

Etapa 3: criar seu funil

Use o CodePipeline assistente para criar seus estágios de funil e conectar seu repositório de origem.

Para criar o pipeline
  1. Abra o CodePipeline console em https://console.aws.amazon.com/codepipeline/.

  2. Na página Welcome (Bem-vindo), Getting started (Conceitos básicos) ou Pipelines, selecione Create pipeline (Criar pipeline).

  3. Na página Etapa 1: Escolher opção de criação, em Opções de criação, selecione a opção Criar pipeline personalizado. Escolha Próximo.

  4. Em Etapa 2: Escolher as configurações do pipeline, em Nome do pipeline, insira MyPipeline.

  5. CodePipeline fornece tubulações do tipo V1 e V2, que diferem em características e preço. O tipo V2 é o único tipo que você pode escolher no console. Para ter mais informações, consulte Pipeline types. Para obter informações sobre preços de CodePipeline, consulte Preços.

  6. Em Função de serviço, escolha Usar função de serviço existente e, em seguida, escolha a função de CodePipeline serviço que foi atualizada com as permissões necessárias para essa ação. Para configurar sua função CodePipeline de serviço para essa ação, consultePermissões da política de função de serviço para a ação de implantação do Lambda.

  7. Deixe as configurações em Advanced settings (Configurações avançadas) como padrão e escolha Next (Próximo).

  8. Na página Etapa 3: Adicionar etapa de origem, adicione uma etapa de origem:

    1. Em Source provider (Provedor de origem), selecione Amazon S3.

    2. Em Chave de objeto, adicione o nome do seu arquivo.zip, incluindo a extensão do arquivo, comosample_lambda_source.zip.

    Escolha Próximo.

  9. Na página Etapa 4: Adicionar estágio de construção, escolha Ignorar.

  10. Na página Etapa 5: Adicionar estágio de teste, escolha Ignorar.

  11. Na página Etapa 6: Adicionar estágio de implantação, escolha Lambda.

    Adicione uma ação de implantação do Lambda ao seu pipeline.
    1. Adicione o nome e o alias da função.

    2. Escolha sua estratégia de implantação.

    3. Escolha Próximo.

  12. Na página Etapa 7: Revisão, revise a configuração do pipeline e escolha Create pipeline para criar o pipeline.

    Um diagrama de console mostrando um pipeline executado com sucesso com a ação de implantação do Lambda adicionada ao seu pipeline.

Etapa 4: Testar o pipeline

Seu pipeline deve ter tudo para executar uma implantação AWS contínua end-to-end nativa. Agora, teste a funcionalidade enviando uma alteração de código ao repositório de origem.

Para testar o pipeline
  1. Faça uma alteração no código no repositório de origem configurado, confirme e envie a alteração.

  2. Abra o CodePipeline console em https://console.aws.amazon.com/codepipeline/.

  3. Escolha o pipeline na lista.

  4. Observe a evolução do pipeline pelos respectivos estágios. Seu pipeline deve ser concluído e sua ação deve ser implantada em sua função Lambda.

Saiba mais

A ação de implantação do Lambda permite dois métodos de implantação. Um método é mudar o tráfego sozinho, sem um artefato de entrada da ação de origem. O outro método é atualizar o código da função usando um artefato de entrada da ação de origem e, em seguida, publicar uma nova versão com base no código atualizado. Para o segundo método, se o alias for fornecido, CodePipeline também fará a mudança de tráfego. Este tutorial de ação de implantação do Lambda demonstra como atualizar sua função usando um artefato de origem.

Para saber mais sobre a ação, consulte a página de referência da ação emAWS Lambda referência de ação de implantação.