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.
-
Um repositório de controle de origem, como GitHub, ou um bucket S3 de origem (este tutorial usa o S3), onde você armazenará um
.zip
arquivo criado para sua função Lambda. -
Você deve usar uma função CodePipeline de serviço existente que tenha sido atualizada com as permissões para essa ação. Para atualizar sua função de serviço, consultePermissões da política de função de serviço para a ação de implantação do Lambda.
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
-
Acesse o console do Lambda e siga as etapas do tutorial a seguir para criar uma amostra da função Lambda: link.
-
Na navegação superior, escolha Criar e selecione Começar do zero na parte superior da página.
-
Em Nome, insira
MyLambdaFunction
. -
Publique uma nova versão. Essa será a versão para a qual o alias apontará.
-
Selecione sua função.
-
Escolha o menu suspenso Ações.
-
Escolha Publicar nova versão.
-
(Opcional) Adicione à descrição em Descrição.
-
Selecione Publish.
-
-
Crie um alias para sua função, como
aliasV1
. -
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
-
Abra seu bucket S3.
-
Escolha Carregar.
-
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
Abra o CodePipeline console em https://console.aws.amazon.com/codepipeline/
. -
Na página Welcome (Bem-vindo), Getting started (Conceitos básicos) ou Pipelines, selecione Create pipeline (Criar pipeline).
-
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.
-
Em Etapa 2: Escolher as configurações do pipeline, em Nome do pipeline, insira
MyPipeline
. -
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
. -
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.
-
Deixe as configurações em Advanced settings (Configurações avançadas) como padrão e escolha Next (Próximo).
-
Na página Etapa 3: Adicionar etapa de origem, adicione uma etapa de origem:
-
Em Source provider (Provedor de origem), selecione Amazon S3.
-
Em Chave de objeto, adicione o nome do seu arquivo.zip, incluindo a extensão do arquivo, como
sample_lambda_source.zip
.
Escolha Próximo.
-
-
Na página Etapa 4: Adicionar estágio de construção, escolha Ignorar.
-
Na página Etapa 5: Adicionar estágio de teste, escolha Ignorar.
-
Na página Etapa 6: Adicionar estágio de implantação, escolha Lambda.
-
Adicione o nome e o alias da função.
-
Escolha sua estratégia de implantação.
-
Escolha Próximo.
-
-
Na página Etapa 7: Revisão, revise a configuração do pipeline e escolha Create pipeline para criar o 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
-
Faça uma alteração no código no repositório de origem configurado, confirme e envie a alteração.
Abra o CodePipeline console em https://console.aws.amazon.com/codepipeline/
. -
Escolha o pipeline na lista.
-
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.